Hello all, I’ve noticed that the faces defined by org-copy-face are not added to the org-faces customize group. This is in accordance with the docstring of ‘copy-face’, which says (in part) “This function does not copy face customization data, so NEW-FACE will not be made customizable. Most Lisp code should not call this function; use `defface' with :inherit instead.”
I think it’s at best an odd surprise and at worst a bug that all org’s faces are not accessible from the org-faces customize group. Would there be any objection to replacing all uses of this function with :inherit as recommended by the docstring, and removing the org-copy-face function? For reference, here are the uses of the function, as returned by rgrep: ./lisp/org-faces.el:431:(org-copy-face 'org-todo 'org-checkbox-statistics-todo ./lisp/org-faces.el:434:(org-copy-face 'org-done 'org-checkbox-statistics-done ./lisp/org-faces.el:540:(org-copy-face 'org-meta-line 'org-block-begin-line ./lisp/org-faces.el:543:(org-copy-face 'org-meta-line 'org-block-end-line ./lisp/org-faces.el:560:(org-copy-face 'org-block 'org-quote ./lisp/org-faces.el:562:(org-copy-face 'org-block 'org-verse ./lisp/org-faces.el:600:(org-copy-face 'org-agenda-structure 'org-agenda-date ./lisp/org-faces.el:603:(org-copy-face 'org-agenda-date 'org-agenda-date-today ./lisp/org-faces.el:607:(org-copy-face 'secondary-selection 'org-agenda-clocking ./lisp/org-faces.el:610:(org-copy-face 'org-agenda-date 'org-agenda-date-weekend ./lisp/org-faces.el:719:(org-copy-face 'org-time-grid 'org-agenda-current-time ./lisp/org-faces.el:791:(org-copy-face 'mode-line 'org-mode-line-clock ./lisp/org-faces.el:793:(org-copy-face 'mode-line 'org-mode-line-clock-overrun Thanks, -- Aaron Ecay