view etc/unicode/mule-ucs/README @ 5089:99f8ebc082d9

Make #'substring an alias of #'subseq; give the latter the byte code. src/ChangeLog addition: 2010-03-03 Aidan Kehoe <kehoea@parhasard.net> * fns.c (Fsubstring): Removed. * search.c (Freplace_match): * minibuf.c (Ftry_completion): * lisp.h: * keymap.c (ensure_meta_prefix_char_keymapp): * dired.c (user_name_completion, file_name_completion): * console-x.c (x_canonicalize_console_connection): * bytecode.c (Bsubseq): * bytecode-ops.h (subseq): Move #'substring to Lisp, as an alias for #'subseq; change all C Fsubstring() calls to Fsubseq(), change the Bsubstring bytecode to Bsubseq. Motivation; not accepting vectors in #'substring is incompatible with GNU, and Common Lisp prefers #'subseq, it has no #'substring. lisp/ChangeLog addition: 2010-03-03 Aidan Kehoe <kehoea@parhasard.net> Move byte code #o117 to #'subseq, not #'substring. Make #'substring available as an alias for #'subseq in Lisp. * bytecomp.el (79, subseq, substring): * bytecomp.el (byte-compile-subseq): New. * update-elc.el (update-elc-chop-extension): Use #'subseq, not #'substring, the latter is not yet available. * subr.el (substring): New alias, to #'subseq. man/ChangeLog addition: 2010-03-03 Aidan Kehoe <kehoea@parhasard.net> * lispref/tips.texi (Comment Tips): * lispref/text.texi (Text Properties): * lispref/strings.texi (Creating Strings): * lispref/processes.texi (Input to Processes): * lispref/functions.texi (Argument List): * lispref/extents.texi (Duplicable Extents): Move examples that used substring to using subseq; in strings.texi, do not change the examples, but document that in this XEmacs, it is an alias for subseq, and that there may be some incompatibilities if you depend on that.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 03 Mar 2010 18:40:12 +0000
parents a29c4eef8f00
children
line wrap: on
line source

The files in this directory were converted from data in the mule-ucs
package (mule-ucs/lisp/reldata/*), using this code:

(defun convert-mule-ucs-file (start end)
  (interactive "r")
  (with-output-to-temp-buffer "*mule-ucs-convert*"
    (save-excursion
      (goto-char start)
      (while (re-search-forward "(\\?\\(.\\) \\. \"\\(.*\\)\") ;+ \\(.*\\)$"
				end t)
	(let ((ch (string-to-char (match-string 1)))
	      (codepoint (match-string 2))
	      (name (match-string 3)))
	  (if (= 1 (charset-dimension (char-charset ch)))
	      (princ (format "0x%x   %s  #   %s\n" (char-octet ch) codepoint name))
	    (princ (format "0x%x%x   %s  #   %s\n" (char-octet ch 0) (char-octet ch 1) codepoint name))))))))

Each file is named after the XEmacs charset it represents.  The CNS files
contain more codepoints than those in unicode-consortium/ because they list
codepoints above 0xFFFF, those handled by surrogates (supported starting in
Windows 2000, I think, but not yet by XEmacs).