emacs interface to corman
John Thingstad <[email protected]> Wed, 01 Oct 2003 07:41:42 +0100
| Newsgroups | gmane.lisp.corman |
|---|---|
| Organization | private |
| Message-ID | <[email protected]> |
I use the emacs interface to corman.
My interface is not perfect but functional.
I have posted the means of doing so to corman newsgroup two times but here
goes.
1. Get the files cl-ilisp.lisp ilisp-pkg.lisp and corman.lisp
2. Load them into corman (clconsole) and save the image (save-image) to
say cormanEmacs.img
The default setup won't work as you have noticed.
First problem is that the corman won't start.
I enabled emacs debugging (M-x toggle-debug-on error)
The error became obvious. The directory name parser didn't understand
spaces in file names and tried to parse everyting from Corman\ out as a
argument. There is no escape character so the solution is to use dos
abbrev file names.
3. In the .emacs file add the following:
(autoload 'cormanlisp "ilisp" "Inferior Corman Common Lisp." t)
(setq *cormanlisp-dir* "C:/PROGRA~1/CORMAN~1/CORMAN~1.0/")
(setq cormanlisp-program
(concat *cormanlisp-dir* "clconsole.exe"
" -image " *cormanlisp-dir* "cormanEmacs.img"))
Ok so now corman loads. Still after typing some characters corman stops
working and stops for a indefinate time (approx 30 sec). Further analysis
shows that it happens each time you press space.
I press C-h-k #\SPACE. This reports:
SPC runs the command ilisp-arglist-message-lisp-space
which is an interactive compiled Lisp function in `ilisp-hi'.
(ilisp-arglist-message-lisp-space)
Ok so the command to return the arguments of the function isn't working.
Better to turn it off. Unfortunately the documentation dosn't tell you how.
Grep'ing though the source I find the ilisp-*arglist-message-lisp-space-p*.
4. (setf ilisp-*arglist-message-lisp-space-p* nil)
These modifications to the old setup procedure should work.
For simplicity I will snip in the whole entry in my .emacs
(or in my case c:/emace-20.7/site-lisp/site-start.el)
;;;------------------------------------------------------------------------------------------------
;;; ilisp.emacs --
(require 'completer)
;;; Uncomment the following lines if you want TMC completion (see
;;; completion.el among the Emacs ELisp sources).
(load "completion")
(initialize-completions)
;; Corman
(autoload 'cormanlisp "ilisp" "Inferior Corman Common Lisp." t)
(setq *cormanlisp-dir* "C:/PROGRA~1/CORMAN~1/CORMAN~1.0/")
(setq cormanlisp-program
(concat *cormanlisp-dir* "clconsole.exe"
" -image " *cormanlisp-dir* "cormanEmacs.img"))
;;; This makes reading a Lisp or Scheme file load in ILISP.
(set-default 'auto-mode-alist
(append '(("\\.lisp$" . lisp-mode)
("\\.lsp$" . lisp-mode)
("\\.cl$" . lisp-mode))
auto-mode-alist))
(add-hook 'lisp-mode-hook '(lambda () (require 'ilisp)))
;;; Configuration of Erik Naggum's HyperSpec access package.
;; If you have a local copy of the HyperSpec, set its path here.
(setq common-lisp-hyperspec-root
"C:/PROGRA~1/CORMAN~1/CORMAN~1.0/HyperSpec/")
(setq common-lisp-hyperspec-symbol-table
"C:/PROGRA~1/CORMAN~1/CORMAN~1.0/HyperSpec/Data/Map_Sym.Txt")
;; If you have a local copy of Common Lisp the language, set it's path here
(setq cltl2-root-url "C:/PROGRA~1/CORMAN~1/CORMAN~1.0/cltl/")
(add-hook 'ilisp-load-hook
'(lambda ()
;; Change default key prefix to C-c
(setq ilisp-*prefix* "\C-c")
;; this cludge stops it from popping up windows
;; every time I press space in cormanlisp mode
(setf ilisp-*arglist-message-lisp-space-p* nil)
;; Set a keybinding for the COMMON-LISP-HYPERSPEC command
(defkey-ilisp "\C-ch" 'common-lisp-hyperspec)
;; Stop ilisp from using popup windows for lisp return values
(setf lisp-no-popper t)
;; Set the inferior Lisp directory to the directory of
;; the buffer that spawned it on the first prompt.
(message "Running ilisp-load-hook")
))
;;;-------------------------------------------------------------------------------------------------------
I think tha's about it. I have recently had problems evaling functions and
buffers when the corman window isn't available on the split screen.
This seems to hang emacs. Havn't solved this yet. But I will try to keep
you posted.
Good luck.
Give me some feedback if it works for you (or not)
(The description makes it sound so simple.. It took me tree days(nights to
get the ##??!!! thing to work. ;)
--
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Upgrade to 128-Bit SSL Security!
http://us.click.yahoo.com/p7cEmB/s7qGAA/yigFAA/SyjtlB/TM
---------------------------------------------------------------------~->
To unsubscribe from this group, send an email to:
[email protected]
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/