Juliusz Chroboczek writes:
> A first beta of Cedilla, the manic text printer, is available from
> 
>   http://www.pps.jussieu.fr/~jch/software/cedilla/

If you happen to run it in CLISP 2.26, you need to apply the following
bug fix to clisp, and also use "ext:quit" instead of "lisp:quit".

Bruno


*** clisp-2.26/src/io.d.bak     2001-04-17 09:31:13.000000000 +0200
--- clisp-2.26/src/io.d 2002-01-31 04:12:46.000000000 +0100
***************
*** 3108,3142 ****
      TheIarray(hstring)->data = token; # Datenvektor := O(token_buff_1)
      token = TheIarray(token)->data; # Normal-Simple-String mit Token
      var uintL pos = 0; # momentane Position im Token
!     loop { # Suche nächstes Hyphen
!       if (len-pos == 1) # einbuchstabiger Charactername?
!         break;
!       var uintL hyphen = pos; # hyphen := pos
!       loop {
!         if (hyphen == len) # schon Token-Ende?
!           goto no_more_hyphen;
!         if (chareq(TheSstring(token)->data[hyphen],ascii('-'))) # Hyphen gefunden?
!           break;
!         hyphen++; # nein -> weitersuchen
!       }
!       # Hyphen bei Position hyphen gefunden
!       var uintL sub_len = hyphen-pos;
!       TheIarray(hstring)->dims[0] = pos; # Displaced-Offset := pos
!       TheIarray(hstring)->totalsize =
!         TheIarray(hstring)->dims[1] = sub_len; # Länge := hyphen-pos
!       # Jetzt ist hstring = (subseq token pos hyphen)
!       # Displaced-String hstring ist kein Bitname -> Error
!       pushSTACK(*stream_); # Wert für Slot STREAM von STREAM-ERROR
!       pushSTACK(copy_string(hstring)); # Displaced-String kopieren
!       pushSTACK(*stream_); # Stream
!       pushSTACK(S(read));
!       fehler(stream_error,
!              GETTEXT("~ from ~: there is no character bit with name ~")
!             );
!      bit_ok: # Bitname gefunden, Bit gesetzt
!       # Mit diesem Bitnamen fertig.
!       pos = hyphen+1; # zum nächsten
!     }
      # einbuchstabiger Charactername
      {
        var chart code = TheSstring(token)->data[pos]; # (char token pos)
--- 3108,3114 ----
      TheIarray(hstring)->data = token; # Datenvektor := O(token_buff_1)
      token = TheIarray(token)->data; # Normal-Simple-String mit Token
      var uintL pos = 0; # momentane Position im Token
!     if (len-pos == 1) # einbuchstabiger Charactername?
      # einbuchstabiger Charactername
      {
        var chart code = TheSstring(token)->data[pos]; # (char token pos)
--
Linux-UTF8:   i18n of Linux on all levels
Archive:      http://mail.nl.linux.org/linux-utf8/

Reply via email to