Index: emacs/lisp/faces.el
diff -c emacs/lisp/faces.el:1.316 emacs/lisp/faces.el:1.317
*** emacs/lisp/faces.el:1.316 Sat Jun 11 13:09:31 2005
--- emacs/lisp/faces.el Mon Jun 13 20:47:08 2005
***************
*** 1,6 ****
;;; faces.el --- Lisp faces
! ;; Copyright (C) 1992,1993,1994,1995,1996,1998,1999,2000,2001,2002,2004
;; Free Software Foundation, Inc.
;; Maintainer: FSF
--- 1,6 ----
;;; faces.el --- Lisp faces
! ;; Copyright (C) 1992,1993,1994,1995,1996,1998,1999,2000,2001,2002,2004,2005
;; Free Software Foundation, Inc.
;; Maintainer: FSF
***************
*** 854,859 ****
--- 854,861 ----
Otherwise, return a single face."
(let ((faceprop (or (get-char-property (point) 'read-face-name)
(get-char-property (point) 'face)))
+ (aliasfaces nil)
+ (nonaliasfaces nil)
faces)
;; Make a list of the named faces that the `face' property uses.
(if (and (listp faceprop)
***************
*** 870,875 ****
--- 872,884 ----
(memq (intern-soft (thing-at-point 'symbol)) (face-list)))
(setq faces (list (intern-soft (thing-at-point 'symbol)))))
+ ;; Build up the completion tables.
+ (mapatoms (lambda (s)
+ (if (custom-facep s)
+ (if (get s 'face-alias)
+ (push (symbol-name s) aliasfaces)
+ (push (symbol-name s) nonaliasfaces)))))
+
;; If we only want one, and the default is more than one,
;; discard the unwanted ones now.
(unless multiple
***************
*** 883,889 ****
(if faces (mapconcat 'symbol-name faces ", ")
string-describing-default))
(format "%s: " prompt))
! obarray 'custom-facep t))
;; Canonicalize the output.
(output
(if (equal input "")
--- 892,898 ----
(if faces (mapconcat 'symbol-name faces ", ")
string-describing-default))
(format "%s: " prompt))
! (complete-in-turn nonaliasfaces aliasfaces) nil t))
;; Canonicalize the output.
(output
(if (equal input "")
***************
*** 2289,2293 ****
(provide 'faces)
! ;;; arch-tag: 19a4759f-2963-445f-b004-425b9aadd7d6
;;; faces.el ends here
--- 2298,2302 ----
(provide 'faces)
! ;; arch-tag: 19a4759f-2963-445f-b004-425b9aadd7d6
;;; faces.el ends here
_______________________________________________
Emacs-diffs mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-diffs