The primary function responsible for creating the
*Agenda Commands* buffer is located within the
org-agenda.el library, and is called
org-agenda-get-restriction-and-command. The function at issue can be found in the source code by typing
M-x find-function RET org-agenda-get-restriction-and-command RET after first having loaded the
org-agenda.el library -- e.g.,
M-x eval-expression RET (require 'org-agenda) RET. The text-properties for the faces are hard-coded.
If the original poster decides to modify the function directly, the function can be copied and pasted to the
.emacs file with a preceding
require statement for the library where the original function is located. Although the internal workings of the function may be modified by the original poster, the original function will maintain its original name -- e.g.,
(require 'org-agenda) (defun org-agenda-get-restriction-and-command (prefix-descriptions) . . . ).
Options include, but are not limited to, hard-coding different faces defined by the original poster, changing the global settings for the existing faces used by the function, or including code to use the existing faces on a buffer-local basis (with different attributes) with something like
face-remap-add-relative, the documentation for which is at the following link: http://www.gnu.org/software/emacs/manual/html_node/elisp/Face-Remapping.html