view etc/unicode/mule-ucs/README @ 5870:df50aaeddca5

Don't tickle an unreasonable but standard C lib limitation, thank you Vin! src/ChangeLog addition: 2015-03-17 Aidan Kehoe <kehoea@parhasard.net> * data.c (fill_ichar_array): Be a bit more careful never to supply the C library's isupper() with a value outside of that range specified by the C standard. Thank you Vin Shelton for reporting the Linux segmentation violation this provokes, and happy St. Patrick's Day to everyone reading the XEmacs lists!
author Aidan Kehoe <kehoea@parhasard.net>
date Tue, 17 Mar 2015 00:29:39 +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).