foreign language patch for build-index+cl-ppcre branch



On 2/22/11, Leo Butler <l.butler at ed.ac.uk> wrote:

> Robert, I think what you are seeing there is that your lisp is
> using a utf-8 external format (encoding), and #\?
> is the replacement char for non-printables.
>
> Based on this hunch, I've pushed a patch for build-index.lisp
> that uses the external format in the master info file to
> read the info files and write the hash tables. Does this
> fix the issue you see?

As it stands it fails to build maxima-index.lisp,
with different error messages for SBCL and Clisp.
I've pasted the messages for doc/info/es below.
Same error in doc/info/pt. In es.utf8 and pt.utf8,
I guess it could succeed w/ SBCL but Clisp is the default
for maxima-local so that's what gets called by the Makefile
and it fails since Clisp doesn't recognize :UTF-8.

What Lisp are you using and what OS ?
Does the current code work as expected?

best

Robert Dodier

PS. error message for SBCL:

robert at robert-laptop:~/maxima/maxima-ppcre-index-branch/Maxima-CAS/doc/info/es$
../../../maxima-local -l sbcl --very-quiet --init=/dev/null
--batch-string='setup_help_database();print_help_database("maxima-index.lisp");'
                             setup_help_database()
Maxima encountered a Lisp error:

 Error during processing of --eval option "(cl-user::run)":

  decoding error on stream
  #<SB-SYS:FD-STREAM for "file
/home/robert/maxima/maxima-ppcre-index-branch/Maxima-CAS/doc/info/es/maxima.info"
{CA291F1}>
  (:EXTERNAL-FORMAT :UTF-8):
    the octet sequence (243 110 32 84) cannot be decoded.

Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
                    print_help_database(maxima-index.lisp)
WARNING:
   Info files have multiple external formats. Info database may be corrupted.
Maxima encountered a Lisp error:

 Error during processing of --eval option "(cl-user::run)":

  The value :UTF-8 is not of type LIST.

Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.


PPS. error message for Clisp:

robert at robert-laptop:~/maxima/maxima-ppcre-index-branch/Maxima-CAS/doc/info/es$
../../../maxima-local -l clisp --very-quiet --init=/dev/null
--batch-string='setup_help_database();print_help_database("maxima-index.lisp");'
                             setup_help_database()
Maxima encountered a Lisp error:


OPEN: illegal :EXTERNAL-FORMAT argument :UTF-8

Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
                    print_help_database(maxima-index.lisp)
WARNING: Info files have multiple external formats. Info database may
be corrupted.
Maxima encountered a Lisp error:


CAR: :UTF-8 is not a list

Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.