# HG changeset patch # User Kenichi Handa # Date 886591547 0 # Node ID b60871b4710f39831c94cb426264224ca7945e41 # Parent 428831a6f4d140fb50be6578b67ffa62dcd1cea1 Use aref instead of sref. diff -r 428831a6f4d1 -r b60871b4710f lisp/international/characters.el --- a/lisp/international/characters.el Wed Feb 04 11:25:47 1998 +0000 +++ b/lisp/international/characters.el Wed Feb 04 11:25:47 1998 +0000 @@ -256,14 +256,14 @@ (while (< i len) (if (= (aref chars i) ?-) (setq i (1+ i) - to (sref chars i)) - (setq ch (sref chars i) + to (aref chars i)) + (setq ch (aref chars i) to ch)) (while (<= ch to) (modify-syntax-entry ch syntax) (modify-category-entry ch category) (setq ch (1+ ch))) - (setq i (+ i (char-bytes to)))) + (setq i (1+ i))) (setq deflist (cdr deflist)))) ;; Ethiopic character set @@ -318,6 +318,37 @@ (modify-category-entry (make-char 'indian-2-column) ?I) (modify-category-entry (make-char 'indian-1-column) ?I) +(let ((deflist + '(;; chars syntax category + ("(5!"#(B" "w" ?7) ; vowel-modifying diacritical mark + ; chandrabindu, anuswar, visarga + ("(5$(B-(52(B" "w" ?1) ; base (independent) vowel + ("(53(B-(5X(B" "w" ?0) ; consonant + ("(5Z(B-(5g(B" "w" ?8) ; matra + ("(5q(B-(5z(B" "w" ?6) ; digit + )) + elm chars len syntax category to ch i) + (while deflist + (setq elm (car deflist)) + (setq chars (car elm) + len (length chars) + syntax (nth 1 elm) + category (nth 2 elm) + i 0) + (while (< i len) + (if (= (aref chars i) ?-) + (setq i (1+ i) + to (aref chars i)) + (setq ch (aref chars i) + to ch)) + (while (<= ch to) + (modify-syntax-entry ch syntax) + (modify-category-entry ch category) + (setq ch (1+ ch))) + (setq i (1+ i))) + (setq deflist (cdr deflist)))) + + ;; Japanese character set (JISX0201-kana, JISX0201-roman, JISX0208, JISX0212) (modify-category-entry (make-char 'katakana-jisx0201) ?k) @@ -425,14 +456,14 @@ (while (< i len) (if (= (aref chars i) ?-) (setq i (1+ i) - to (sref chars i)) - (setq ch (sref chars i) + to (aref chars i)) + (setq ch (aref chars i) to ch)) (while (<= ch to) (modify-syntax-entry ch syntax) (modify-category-entry ch category) (setq ch (1+ ch))) - (setq i (+ i (char-bytes to)))) + (setq i (1+ i))) (setq deflist (cdr deflist)))) ;; Thai character set (TIS620) @@ -459,14 +490,14 @@ (while (< i len) (if (= (aref chars i) ?-) (setq i (1+ i) - to (sref chars i)) - (setq ch (sref chars i) + to (aref chars i)) + (setq ch (aref chars i) to ch)) (while (<= ch to) (modify-syntax-entry ch syntax) (modify-category-entry ch category) (setq ch (1+ ch))) - (setq i (+ i (char-bytes to)))) + (setq i (1+ i))) (setq deflist (cdr deflist)))) ;; Tibetan character set @@ -505,14 +536,14 @@ (while (< i len) (if (= (aref chars i) ?-) (setq i (1+ i) - to (sref chars i)) - (setq ch (sref chars i) + to (aref chars i)) + (setq ch (aref chars i) to ch)) (while (<= ch to) (modify-syntax-entry ch syntax) (modify-category-entry ch category) (setq ch (1+ ch))) - (setq i (+ i (char-bytes to)))) + (setq i (1+ i))) (setq deflist (cdr deflist)))) ;; Vietnamese character set diff -r 428831a6f4d1 -r b60871b4710f lisp/international/kinsoku.el --- a/lisp/international/kinsoku.el Wed Feb 04 11:25:47 1998 +0000 +++ b/lisp/international/kinsoku.el Wed Feb 04 11:25:47 1998 +0000 @@ -78,8 +78,8 @@ (idx 0) ch) (while (< idx len) - (setq ch (sref kinsoku-bol idx) - idx (+ idx (char-bytes ch))) + (setq ch (aref kinsoku-bol idx) + idx (1+ idx)) (modify-category-entry ch ?>))) ;; Setting character category `<' for characters which should not be @@ -115,8 +115,8 @@ (idx 0) ch) (while (< idx len) - (setq ch (sref kinsoku-eol idx) - idx (+ idx (char-bytes ch))) + (setq ch (aref kinsoku-eol idx) + idx (1+ idx)) (modify-category-entry ch ?<))) ;; Try to resolve `kinsoku' restriction by making the current line longer.