;;; -*- lexical-binding: t -*- ;;; ;;; this file: ;;; http://user.it.uu.se/~embe8573/emacs-init/test-faces.el ;;; https://dataswamp.org/~incal/emacs-init/test-faces.el (defun insert-colored-text (str color bright) "Insert STR at point, in COLOR, and sometimes BRIGHT." (interactive (list (read-string "string: ") (read-string "color: ") (y-or-n-p "bright? ") )) (insert (propertize str 'font-lock-face `(:weight ,(if bright 'bold 'normal) :foreground ,color) ))) ;; use this to test (when nil (progn (forward-line 1) (insert "The French flag is ") (insert-colored-text "blue, " "blue" t) (insert-colored-text "white, " "white" t) (insert "and" ) (insert-colored-text " red." "red" nil) ) ; <- eval me ) (defun test-all-faces () "Print a test string in every color, normal and bright." (interactive) (forward-line 1) (let ((str "this is what it looks like")) (dolist (bold '(nil t)) (dolist (color '("black" "red" "green" "yellow" "blue" "magenta" "cyan" "white") ) (insert-colored-text (format "%s in %s (that is %sbold)\n" str color (if bold "" "not ")) color bold) )))) ;; test all colors: ;; (test-all-faces) ; <- eval me