unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* PSA: please stop using weird symbol prefixes
@ 2015-05-11  6:18 Paul Rankin
  0 siblings, 0 replies; 2+ messages in thread
From: Paul Rankin @ 2015-05-11  6:18 UTC (permalink / raw)
  To: help-gnu-emacs

Lately I've seen a lot of seemingly random mode symbol prefixes, e.g. a mode called `foobar-mode` will use `fb:next-item` and elsewhere `fblatex:export-new` or perhaps `foobar/end-of-tree` etc. etc.

1. This approach grates against the Elisp coding conventions...

> • You should choose a short word to distinguish your program from
>   other Lisp programs.  The names of all global symbols in your
>   program, that is the names of variables, constants, and functions,
>   should begin with that chosen prefix.  Separate the prefix from the
>   rest of the name with a hyphen, ‘-’.  This practice helps avoid
>   name conflicts, since all global variables in Emacs Lisp share the
>   same name space, and all functions share another name space(1).
>   Use two hyphens to separate prefix and name if the symbol is not
>   meant to be used by other packages.

-- from (info "(elisp) Coding Conventions")

2. It breaks `custom-unlispify-tag-names` which is used to display customize pages without the mode prefix.

3. It breaks autocompletion, at least in the mini-buffer, where the user expects <space> translated to hyphen to work as a universal delimiter.

4. Most importantly, it breaks user expectation long established by code that properly follows the conventions that symbols ought to take the form PREFIX-some-symbol.




^ permalink raw reply	[flat|nested] 2+ messages in thread
[parent not found: <mailman.2751.1431333428.904.help-gnu-emacs@gnu.org>]

end of thread, other threads:[~2015-05-11 21:17 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-11  6:18 PSA: please stop using weird symbol prefixes Paul Rankin
     [not found] <mailman.2751.1431333428.904.help-gnu-emacs@gnu.org>
2015-05-11 21:17 ` Emanuel Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).