From 61c306a4d83670238541bd1135f5b5f7a7d5d4d8 Mon Sep 17 00:00:00 2001 From: tomo Date: Wed, 10 Apr 2002 04:10:00 +0000 Subject: [PATCH] (char-db-insert-char-spec): Refer `char-db-ignored-attributes'; add `ideographic-structure' into requesting non-CCS attributes if requesting is nil. (char-db-ignored-attributes): New variable. (insert-char-attributes): Refer `char-db-ignored-attributes'. --- lisp/utf-2000/char-db-util.el | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/lisp/utf-2000/char-db-util.el b/lisp/utf-2000/char-db-util.el index 392ee1f..55b26b9 100644 --- a/lisp/utf-2000/char-db-util.el +++ b/lisp/utf-2000/char-db-util.el @@ -211,10 +211,14 @@ cal nil) (while char-spec (setq key (car (car char-spec))) - (if (find-charset key) - (setq cal (cons key cal)) - (setq al (cons key al))) + (unless (memq key char-db-ignored-attributes) + (if (find-charset key) + (setq cal (cons key cal)) + (setq al (cons key al)))) (setq char-spec (cdr char-spec))) + (unless (or cal + (memq 'ideographic-structure al)) + (push 'ideographic-structure al)) (insert-char-attributes char readable (or al 'none) cal) @@ -356,6 +360,8 @@ (defvar char-db-convert-obsolete-format t) +(defvar char-db-ignored-attributes nil) + (defun insert-char-attributes (char &optional readable attributes ccs-attributes column) @@ -363,18 +369,32 @@ (setq attributes (sort (if attributes (if (consp attributes) - (copy-sequence attributes)) + (progn + (dolist (name attributes) + (unless (memq name char-db-ignored-attributes) + (push name atr-d))) + atr-d)) (dolist (name (char-attribute-list)) - (if (find-charset name) - (push name ccs-d) - (push name atr-d))) + (unless (memq name char-db-ignored-attributes) + (if (find-charset name) + (push name ccs-d) + (push name atr-d)))) atr-d) #'char-attribute-name<)) (setq ccs-attributes (sort (if ccs-attributes - (copy-sequence ccs-attributes) + (progn + (setq ccs-d nil) + (dolist (name ccs-attributes) + (unless (memq name char-db-ignored-attributes) + (push name ccs-d))) + ccs-d) (or ccs-d - (charset-list))) + (progn + (dolist (name (charset-list)) + (unless (memq name char-db-ignored-attributes) + (push name ccs-d))) + ccs-d))) #'char-attribute-name<))) (unless column (setq column (current-column))) -- 1.7.10.4