I set my encodings in ~/.clisprc.lisp ie.:
(setf CUSTOM:*PATHNAME-ENCODING* (ext:make-encoding :charset CHARSET:ISO-8859-1 :line-terminator :UNIX))
It seems that when clisp is launched with slime/swank, the streams are changed, and set-pathname-encoding fails on them:
(progn (load "/home/pjb/opt/share/emacs/site-lisp/slime/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.8082" :coding-system "utf-8-unix"))
;; Loading file /home/pjb/.clisprc.lisp ...
*** - SYSTEM::SET-STREAM-EXTERNAL-FORMAT on
#<INPUT UNBUFFERED FILE-STREAM CHARACTER #P"/dev/fd/0" @1>
#<OUTPUT UNBUFFERED FILE-STREAM CHARACTER #P"/dev/fd/1">>
The following restarts are available:
SKIP :R1 skip (SETF *PATHNAME-ENCODING* # ...)
STOP :R2 stop loading file /home/pjb/rc/clisprc.lisp
C/Break 1 USER>
Of course now I will wrap them in ignore-errors, but perhaps it would be better if SYSTEM::SET-STREAM-EXTERNAL-FORMAT didn't break on these streams?
clisp-2.48 on x86_64, with slime of two days ago.