Re: Freeze for SLIME 2.4

Paul Bowyer <[email protected]>
Newsgroups gmane.lisp.slime.devel
Message-ID <[email protected]>
On 02/23/2014 03:44 PM, João Távora wrote:
>> I'm attaching a copy of my .emacs file renamed to my_dot_emacs.
>> There will be changes to my .emacs as I learn more about what I need.
> Hi Paul,
>
> I'm annotating your .emacs file, not solving your issue with the broken
> contribs in particular, but I've spotted some mistakes.
>
>> ;;Don't know what this does, but I saw it in slime/README.md so I thought to try it...
>> ```el
> The "```el" is not Elisp. It's a bit of github-specific markdown markup
> to highlight emacs-lisp code.
Thanks, I removed it.
>
>> (require 'cl-lib "~/my-slime-sandbox/slime/lib/cl-lib.el") ;;this is
>> cl-lib-0.3 shipped w/slime.
> You shouldn't need to do this at all, unless you plan to use cl-lib in other
> projects.
OK, removed. This was there per one of your emails stating that cl-lib 
had to be loaded for emacs-23 users. Evidently that's not the case now.
>> ;;Latest slime installation
>> (add-to-list 'load-path "~/my-slime-sandbox/slime/") ;your SLIME directory
>>
>> ;;(require 'slime-tests) ;;This is the way to load the test suite for interactive use, but it gives errors this way.
>> 						 ;;Run the tests from
>> 						 within emacs with M-x
>> 						 slime-batch-test.
> This should be OK to uncomment, but beware that slime-tests.el required
> this way may not always live in your slime dir (the only you added to
> the load-path so far)
>
I'm going to continue testing in my download script rather than trying 
to do it from within emacs. I only need to check new downloads for 
possible regressions. Once that's done, I usually don't need it when I'm 
running slime.
>> ;;Stuff from
>> http://archgeek.wordpress.com/2009/02/07/setting-up-slime-emacs-and-sbcl/
> Mind you this article is 5 years old and possibly outdated in some
> aspects.
I know its old (so am I) but it seemed a good way to set things up so I 
used it as a skeleton and it's been OK so far.
>
>> (eval-after-load "slime"
>>
>>    '(progn
>>
>> 	;;Recently added these three lines to allow quicklisp to work
>> 	(set-language-environment "UTF-8")
>> 	(setq slime-net-coding-system 'utf-8-unix)
> I don't have this and quicklisp loads fine. I load it from my ~/.sbclrc
> like so: (load "~/quicklisp/setup.lisp")
My ~/.sbclrc contains:
;;; The following lines added by ql:add-to-init-file:
#-quicklisp
(let ((quicklisp-init (merge-pathnames "quicklisp/setup.lisp"
                                        (user-homedir-pathname))))
   (when (probe-file quicklisp-init)
     (load quicklisp-init)))
This is fairly recent because I was fiddling with quicklisp two or three 
months ago.
>
> Perhaps you could explain why you think utf-8-unix is needed. Maybe it
> is.
Those three lines have been in place for quite some time. They were 
necessary when they were put in place, but as you've noticed, I 
commented one of them out. Maybe the other two can be removed also. I'll 
try it without and see.
>> 	;;(load (expand-file-name "~/quicklisp/slime-helper.el"))
>> 	;;NOTE: this causes quicklisp to load its version of slime
>> 	rather than mine
> Indeed. Don't do this unless you plan to use quicklisp's version
> exclusively.
>
>> 	(setq slime-lisp-implementations
>> 	'(
>> 	(sbcl ("/usr/local/bin/sbcl") :coding-system utf-8-unix) ;;for sbcl
>> 	;;cmucl won't load clx under mcclim!
>> 	;;(cmucl ("/opt/cmucl-20d/bin/lisp") :coding-system iso-8859-1-unix) ;;Not using
>> 	;;;;(cmucl ("/opt/cmucl-20d/bin/lisp") :coding-system utf-8-unix) ;;Don't work
>> 	(ccl ("/usr/local/bin/ccl") :program-args -K :coding-system utf-8-unix) ;;64-bit
>> 	(ccl32 ("/usr/local/bin/ccl32") :program-args -K :coding-system utf-8-unix) ;;32-bit
>> 	;;;;(clforjava ("/home/pfb/clforjava")) ;;Doesn't work properly
>> 	)
> This looks fine, though the default coding-system should work.
I'll leave the coding system as utf-8 for now. Every so often I do 
copy/paste from some website and I've had to strain the copied code 
through a binary editor to get rid of characters that looked like ascii 
but were in fact something else. I haven't had that problem since I set 
the coding system to utf-8.
>
>> 	common-lisp-hyperspec-root "~/my-slime-sandbox/HyperSpec/")
>>
>>    (slime-setup '(
>> 	slime-fancy  ;;added this when quicklisp was added
>> 	
>> ;	slime-tramp  ;;added this when quicklisp was added. (may be useful)
>> 	slime-asdf
>> 	;;slime-typeout-frame	;;starts slime with a external typeout frame
>> 	slime-indentation
>> ;	slime-mdot-fu
>> 	;;slime-sbcl-exts   ;;decided not to continue with this
>> 	slime-xref-browser
>> 	slime-highlight-edits	;;Added this to test. I'm having trouble adapting to it, but it is useful.
>> 	slime-mrepl				;;Allows multiple repls. Invoke w/ M-x slime-open-listener.
>> 	;;slime-tests ;;Not the best place for this.
>> 	
>> 	))
> See below after your `slime-autoloads' line.
>
>> 	;; Remove the following without noticed problems
>> 	;;(slime-autodoc-mode)
> Indeed. The `slime-autodoc' contrib is included in `slime-fancy'
> contrib. And should set itself up automatically when the contrib is
> enabled.
>
>> 	;;(setq slime-complete-symbol*-fancy t)
>> 	;;(setq slime-complete-symbol-function
>> 	'slime-fuzzy-complete-symbol)
> If you comment out this line `slime-fuzzy-complete-symbol' won't be your
> default completion function.
>
>
>> 	;;(add-hook 'lisp-mode-hook (lambda () (slime-mode t)))
> This is redoing something that SLIME should take care of.
>   	
>> 	;;When this is loaded, it fills the repl with many warnings...
>> 	;;(load "~/quicklisp/log4slime-setup.el")
>> 	;;(global-log4slime-mode 1) ;;This generates a compiler warning
> I'll have a look at log4slime and get in touch with the author to see if
> we can make it a proper (third-party) contrib.
I started trying to use log4cl because of some downloaded code I've been 
trying to upgrade. It seemed like a useful tool to track the progress of 
the code as I learned from the original author. It beats writing format 
statements in places I want to monitor.
>> 	
>>    ))
>> 	
>> (require 'slime-autoloads)
> Your contrib setup is fine, but if you wish you could add here
>
>      (setq slime-contribs '(slime-fancy slime-asdf slime-indentation
>                             slime-xref-browser slime-hightlight-edits
>                             slime-mrepl))
>
> Instead of the `slime-setup' call in your eval-after-load block.
Yup, I figured that one out all by myself, but I think I'll keep using 
it because I'm accustomed to it by now.
>
> João
>
Thanks for annotating my .emacs file. I did learn from your efforts and 
I made most of the changes you recommended.

Paul Bowyer
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.