emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] org-mode + icicles, avoid key binding redefinitions?


From: Drew Adams
Subject: Re: [O] org-mode + icicles, avoid key binding redefinitions?
Date: Thu, 23 Jan 2014 07:33:58 -0800 (PST)

> >  * Sequences consisting of `C-c' followed by any other punctuation
> >    character are allocated for minor modes.  Using them in a major
> >    mode is not absolutely prohibited, but if you do that, the major
> >    mode binding may be shadowed from time to time by minor modes.
> >
> > IOW, no major mode should bind any of the latter group of keys,
> > including `C-'' and `C-`', and any minor mode may do so - whether
> > that mode is "official" or not.
> 
> We are talking about C-c ' but I think that's a typo in the
> paragraph above, since the manual you quote is about C-c '.

Yes, sorry, I meant C-c ' and C-c `.

> > 1b. There is no global default binding for `C-'' in `emacs -Q'.
> > And there should not be, since it is reserved for minor modes.
> >
> > I don't know whether Org binds `C-'' for a minor mode or for
> > a major mode, but if it is the latter then it is in violation
> > of the convention.
> 
> As the manual says, this is not prohibited, just discouraged.

Binding C-c ' by a major mode defies the convention.  Whether
you want to interpret the convention as a prohibition (without
any real teeth) or just a mild discouragement is up to you.

What we can say is that any major mode that binds such keys
does not respect the GNU Emacs key-binding conventions, which
were defined to allow help modes and libraries cooperate.
There can be no disagreement about that.

We can disagree about how important it is to respect those
conventions.  Icicles, at any rate, does respect them.

> You're of course allowed to shadow C-c ' in your code.

It's not about me or my code or being allowed.  C-c ' is
reserved for minor modes.  Any minor mode can bind such keys.
No major mode should do so.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]