unicode-internal-commit: fix problems with syntax tables due to settings in japanese.el

Ben Wing ben at xemacs.org
Tue Mar 23 08:20:26 EDT 2010


changeset:   5260:41452bac764e
branch:      ben-unicode-internal
user:        Ben Wing <ben at xemacs.org>
date:        Sun Mar 07 03:17:34 2010 -0600
files:       lisp/ChangeLog lisp/mule/japanese.el
description:
fix problems with syntax tables due to settings in japanese.el

-------------------- ChangeLog entries follow: --------------------

lisp/ChangeLog addition:

2010-03-07  Ben Wing  <ben at xemacs.org>

	* mule/japanese.el (for):
	Don't blindly set syntax of entire rows -- check to make sure we aren't
	changing syntax of Latin-1.


diff -r 5b61ece2c903 -r 41452bac764e lisp/ChangeLog
--- a/lisp/ChangeLog	Sun Mar 07 03:15:54 2010 -0600
+++ b/lisp/ChangeLog	Sun Mar 07 03:17:34 2010 -0600
@@ -1,3 +1,9 @@
+2010-03-07  Ben Wing  <ben at xemacs.org>
+
+	* mule/japanese.el (for):
+	Don't blindly set syntax of entire rows -- check to make sure we aren't
+	changing syntax of Latin-1.
+
 2010-03-06  Ben Wing  <ben at xemacs.org>
 
 	* code-init.el (reset-coding-categories-to-default):
diff -r 5b61ece2c903 -r 41452bac764e lisp/mule/japanese.el
--- a/lisp/mule/japanese.el	Sun Mar 07 03:15:54 2010 -0600
+++ b/lisp/mule/japanese.el	Sun Mar 07 03:17:34 2010 -0600
@@ -74,8 +74,19 @@
 	  japanese/language))
 
 ;;; Syntax of Japanese characters.
-(loop for row in '(33 34 40)
-      do (modify-syntax-entry `[japanese-jisx0208 ,row] "_"))
+(loop for row in '(33 34 40) do
+  (loop for col from #x21 to #x7e
+    for ch = (make-char 'japanese-jisx0208 row col)
+    ;; #### This is all messed up.  Under Unicode-internal, there are all
+    ;; sorts of random characters in these rows and it's far from obvious
+    ;; we want to be setting them to have a syntax of _.  We definitely
+    ;; don't want to do that for ASCII or Latin-1 characters -- e.g.
+    ;; JISX0208 0x2140 is Unicode 0x5C "REVERSE SOLIDUS" aka backslash,
+    ;; and setting its syntax to _ messes things up majorly.  We really
+    ;; need to copy the stuff from GNU Emacs 23.1, but first we have to
+    ;; sort out the GPL v3 stuff. --ben
+    if (and ch (>= ch 256))
+    do (modify-syntax-entry ch "_")))
 (loop for char in '(#x3c #x2b #x2c #x33 #x34 #x35 #x36 #x37 #x38 #x39
 		    #x3a #x3b)
   ;;(?$B!<(B ?$B!+(B ?$B!,(B ?$B!3(B ?$B!4(B ?$B!5(B ?$B!6(B ?$B!7(B ?$B!8(B ?$B!9(B ?$B!:(B ?$B!;(B)



More information about the XEmacs-Patches mailing list