Mercurial > emacs
comparison lisp/facemenu.el @ 17555:6e2928cff18e
(facemenu-add-new-face): Rewrite to give each
lambda expression a doc string.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 25 Apr 1997 04:46:19 +0000 |
parents | c2640d101ca9 |
children | b1a322f1666d |
comparison
equal
deleted
inserted
replaced
17554:0a75fcee3cb8 | 17555:6e2928cff18e |
---|---|
591 | 591 |
592 (defun facemenu-add-new-face (face) | 592 (defun facemenu-add-new-face (face) |
593 "Add a FACE to the appropriate Face menu. | 593 "Add a FACE to the appropriate Face menu. |
594 Automatically called when a new face is created." | 594 Automatically called when a new face is created." |
595 (let* ((name (symbol-name face)) | 595 (let* ((name (symbol-name face)) |
596 (menu (cond ((string-match "^fg:" name) | 596 menu docstring |
597 (setq name (substring name 3)) | |
598 'facemenu-foreground-menu) | |
599 ((string-match "^bg:" name) | |
600 (setq name (substring name 3)) | |
601 'facemenu-background-menu) | |
602 (t 'facemenu-face-menu))) | |
603 (key (cdr (assoc face facemenu-keybindings))) | 597 (key (cdr (assoc face facemenu-keybindings))) |
604 function menu-val) | 598 function menu-val) |
599 (cond ((string-match "^fg:" name) | |
600 (setq name (substring name 3)) | |
601 (setq docstring | |
602 (format "Select foreground color %s for subsequent insertion." | |
603 name)) | |
604 (setq menu 'facemenu-foreground-menu)) | |
605 ((string-match "^bg:" name) | |
606 (setq name (substring name 3)) | |
607 (setq docstring | |
608 (format "Select background color %s for subsequent insertion." | |
609 name)) | |
610 (setq menu 'facemenu-background-menu)) | |
611 (t | |
612 (setq docstring | |
613 (format "Select face `%s' for subsequent insertion." | |
614 name)) | |
615 (setq menu 'facemenu-face-menu))) | |
605 (cond ((eq t facemenu-unlisted-faces)) | 616 (cond ((eq t facemenu-unlisted-faces)) |
606 ((memq face facemenu-unlisted-faces)) | 617 ((memq face facemenu-unlisted-faces)) |
607 (key ; has a keyboard equivalent. These go at the front. | 618 (key ; has a keyboard equivalent. These go at the front. |
608 (setq function (intern (concat "facemenu-set-" name))) | 619 (setq function (intern (concat "facemenu-set-" name))) |
609 (fset function | 620 (fset function |
610 (` (lambda () (interactive) | 621 `(lambda () |
611 (facemenu-set-face (quote (, face)))))) | 622 ,docstring |
623 (interactive) | |
624 (facemenu-set-face (quote (, face))))) | |
612 (define-key 'facemenu-keymap key (cons name function)) | 625 (define-key 'facemenu-keymap key (cons name function)) |
613 (define-key menu key (cons name function))) | 626 (define-key menu key (cons name function))) |
614 ((facemenu-iterate ; check if equivalent face is already in the menu | 627 ((facemenu-iterate ; check if equivalent face is already in the menu |
615 (lambda (m) (and (listp m) | 628 (lambda (m) (and (listp m) |
616 (symbolp (car m)) | 629 (symbolp (car m)) |