Hello, org.el seems to define three weird variables: org-m, org-l and org-f (see below). Two of these variables (l and f) are used exclusively in org-level-face, while m is not used anywhere in the code. They don't appear to be used in the other source files, either.
Is there a particular reason for them being accessible outside of the function? They seem oddly.. exposed. Or is it some kind of performance reason? Here's the code in question, taken from Version 9.1.9, L6531 onward: (defvar org-m nil) (defvar org-l nil) (defvar org-f nil) (defun org-get-level-face (n) "Get the right face for match N in font-lock matching of headlines." (setq org-l (- (match-end 2) (match-beginning 1) 1)) (when org-odd-levels-only (setq org-l (1+ (/ org-l 2)))) (if org-cycle-level-faces (setq org-f (nth (% (1- org-l) org-n-level-faces) org-level-faces)) (setq org-f (nth (1- (min org-l org-n-level-faces)) org-level-faces))) (cond ((eq n 1) (if org-hide-leading-stars 'org-hide org-f)) ((eq n 2) org-f) (t (unless org-level-color-stars-only org-f)))) Cheers, DW