;;; ll-face-all-words --- ll face all words -*- lexical-binding: t -*- ;;; Commentary: ;;; Code: (require 'cl-lib) (cl-pushnew "." load-path :test #'string=) (require 'll) (defun face-all-words () (cl-loop with res with fl = (face-list) with f2 = (mapcar (L (f) (symbol-name f)) fl) with f3 = (flatten-list (mapcar (L (s) (split-string s "-")) f2)) with f4 = (sort f3 :lessp #'string<) for l = (--- f4) for w = (1st f4) while f4 do (setf f4 (seq-remove (L (s) (s= w s)) f4)) (cl-pushnew (cons (- l (--- f4)) w) res) finally return (sort res :key #'car :lessp #'>))) ;; (@i (@f "%s" (face-all-words))) ;; ((76 . gnus ) #1 \o/ ;; (70 . face ) #2 ;; (55 . color) #3 ;; (43 . line ) ;; (38 . tab ) ;; (31 . w3m ) ;; (31 . erc ) ;; (29 . lock ) ;; (29 . group) ;; (29 . font ) ...) (<- 'll-face-all-words) ;;; ll-face-all-words.el ends here