There is no GNU Emacs convention wrt case for Emacs-Lisp function and variable names. (There can be any number of such "conventions" that anyone could come up with, of course.)
The "Emacs Lisp Style Guide" that you reference is just one person's proposed guidelines.
A (very) few longstanding libraries distributed with Emacs do use two styles that you mentioned: Some names are title-case (capitalized) and some are lowercase.
In some cases, at least originally, a distinction was made between names of commands and customizable variables intended for users to type, and names of non-interactive functions and variables intended to be bound to keys or invoked from Lisp code. But this has not been adopted/respected generally, and it has not always been implemented consistently.
For example, the commands in
buff-menu.el
that are expected to be invoked mainly byM-x
are lowercase (for typing convenience), and the commands that are bound to keys in the buffer-list display are capitalized, as are other objects in the library (variables, non-interactive functions, etc.). Someone thought this was a great idea at one point, and it has remained in place in that library. But such libraries are a small minority.Generally, it makes sense to use all lowercase, especially for names that a user will type (e.g., to
M-x
, as input). It's just easier that way. And in practice most names are in fact lowercase.
Use whatever you want. Use whatever you feel is most convenient for your use cases.
If it is important for your use case to distinguish command Abc
from command abc
, go for it. This is Lisp. You can have command, variable, face,.. whatever names that start with digits, symbols (e.g. >
), etc. - pretty much any chars you like.
If you want to keep things simple for most users who might type a name using a common keyboard, then you might want to stick with lowercase a
to z
plus digits and hyphen (-
) instead of underscore (_
), to obviate their needing to use the Shift key. But it's really up to you.