+----+-----+ <--- new descent
")
-;; Encode composition rule RULE into an integer value. RULE is a cons
-;; of global and new reference point symbols.
-;; This must be compatible with C macro COMPOSITION_ENCODE_RULE
-;; defined in composite.h.
+;;;###autoload
(defun encode-composition-rule (rule)
+ "Encode composition rule RULE into an integer value.
+RULE is a cons of global and new reference point symbols
+\(see reference-point-alist)."
+
+ ;; This must be compatible with C macro COMPOSITION_ENCODE_RULE
+ ;; defined in composite.h.
+
(if (and (integerp rule) (< rule 144))
;; Already encoded.
rule
(or (integerp nref)
(setq nref (cdr (assq nref reference-point-alist))))
(or (and (>= gref 0) (< gref 12) (>= nref 0) (< nref 12))
- (error "Invalid composition rule: %S" rule))
+ (error "Invalid composition rule: %S" rule))
(+ (* gref 12) nref))))
;; Decode encoded composition rule RULE-CODE. The value is a cons of
(if (or (vectorp components) (listp components))
(setq components (encode-composition-components components)))
(compose-region-internal start end components modification-func)
- (set-buffer-modified-p modified-p)))
+ (restore-buffer-modified-p modified-p)))
;;;###autoload
(defun decompose-region (start end)
(when tail
(save-match-data
(save-excursion
- (while (and tail (not func))
+ (while (and tail (not func))
(setq pattern (car (car tail))
func (cdr (car tail)))
(goto-char pos)
(make-obsolete 'decompose-composite-char 'char-to-string "21.1")
\f
+
+;;; arch-tag: ee703d77-1723-45d4-a31f-e9f0f867aa33
;;; composite.el ends here