* facemenu.el (describe-text-mode-map): Removed bootstrap kludge.
* toolbar/tool-bar.el (tool-bar-mode): Made the standard value t.
* menu-bar.el (menu-bar-mode): Ditto.
* facemenu.el (describe-text-done): New function.
(describe-text-mode-map): New variable.
(describe-text-mode-hook): New option.
(describe-text-mode): New function.
(describe-text-widget): New function.
(describe-text-sexp): New function.
(describe-text-properties): New function.
(describe-text-category): New command.
(describe-text-at): New command.
(facemenu-menu): Replace `list-text-properties-at' with
`describe-text-at' in the menu.
* wid-edit.el (widgetp): New function.
* wid-edit.el (widget-keymap, widget-insert, widget-setup):
Autoloaded.
* emacs-lisp/pp.el (pp-to-string): Autoloaded.
* wid-browse.el: Removed version and x-url keywords.
of t and nil values.
(facemenu-set-face): Handle START and END interactively.
(facemenu-set-foreground): Don't use a face; specify color directly.
(facemenu-set-background): Likewise.
(facemenu-set-face-from-menu): Doc fix.
(facemenu-active-faces): Use face-attribute-vector
to handle bare attributes not in faces.
(facemenu-get-face): Don't handle face names fg:... and bg:... specially.
(facemenu-add-new-face): New argument MENU.
New way to handle adding colors to the color menus.
* term/pc-win.el (msdos-setup-initial-frame): New function, run by
term-setup-hook. Call msdos-remember-default-colors and
msdos-handle-reverse-video.
(msdos-face-setup): Parts of code moved to
msdos-setup-initial-frame.
(msdos-handle-reverse-video): New function, modeled after
x-handle-reverse-video.
(make-msdos-frame): Don't use initial-frame-alist and
default-frame-alist. Call msdos-handle-reverse-video.
(msdos-color-aliases): Remove.
(msdos-color-translate, msdos-approximate-color): Remove.
(msdos-color-values): Use 16-bit RGB values. RGB values updated
for better approximation of X colors.
(msdos-face-setup): Call tty-color-clear. Remove code that sets
up tty-color-alist (it is now on startup.el).
(x-display-color-p, x-color-defined-p, x-color-values,
x-defined-colors, face-color-supported-p, face-color-gray-p):
Remove.
* facemenu.el (facemenu-read-color, list-colors-display): Use
defined-colors for all frame types.
(facemenu-color-equal): Use color-values for all frame types.
* faces.el (read-face-attribute): For :foreground and :background
attributes and frames on character terminals, translate the color
to the closest supported one before looking it up in the list of
valid values.
(face-valid-attribute-values): Call defined-colors for all types
of frames.
(defined-colors, color-defined-p, color-values, display-color-p):
New finctions.
(x-defined-colors, x-color-defined-p, x-color-values,
x-display-color-p): Aliases for the above.
* startup.el (command-line): Register terminal colors for frame
types other than x and w32, but only if the terminal supports
colors. Call tty-color-define instead of face-register-tty-color.
* term/x-win.el (xw-defined-colors): Renamed from
x-defined-colors.
* term/w32-win.el (xw-defined-colors): Likewise.
* term/tty-colors.el: New file.
* loadup.el: Load term/tty-colors.
definition to allow regexps; add regexps for some packages that
define a lot of faces.
(facemenu-add-new-face): Test new face against regexps.
(list-colors-display): Rather than creating a zillion faces, use
new (foreground-color . COLOR) and (background-color . COLOR)
face properties.
Make them at top level.
(facemenu-key): Variable deleted.
(facemenu-keybindings, facemenu-new-faces-at-end)
(facemenu-unlisted-faces, facemenu-remove-face-function): Doc fixes.
`facemenu-discard-redundant-faces'. This version, written by
Simon Marshall, is faster and does not require optional
argument for recursive re-entry. New argument FRAME allows
check to be done relative to face definitions in any frame.
(facemenu-unlisted-faces): Remove font-lock faces from
the default list. The list of face names was out of sync; to
prevent this from happenning again I made font-lock.el, and other
packages that create "private" faces, put them on the list
themselves. This should give them a better chance of being
updated when the packages are changed.