all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ken <gebser@mousecar.com>
To: Tim Visher <tim.visher@gmail.com>
Cc: GNU Emacs List <help-gnu-emacs@gnu.org>
Subject: Re: create new key prefix
Date: Wed, 20 Feb 2013 04:35:08 -0500	[thread overview]
Message-ID: <512498CC.3070009@mousecar.com> (raw)
In-Reply-To: <CAHa53uzd0D8zXLEMhnUn1CEvJg-_3eSsX3WvG+mGcrZxc9_NKw@mail.gmail.com>

On 02/19/2013 08:41 PM Tim Visher wrote:
> On Tue, Feb 19, 2013 at 8:36 PM, ken<gebser@mousecar.com>  wrote:
>> On 02/19/2013 08:20 PM Tim Visher wrote:
>>> On Tue, Feb 19, 2013 at 6:26 PM, ken<gebser@mousecar.com>   wrote:
>>>>
>>>> I've defined quite a few new keys over the years and so would like to
>>>> create
>>>> a new key prefix.  I.e., I want to be able to define keys such as "C-c p
>>>> s",
>>>> "C-c p m", etc.  So how do I tell emacs that (for all possible modes) I
>>>> want
>>>> "C-c p" to look for the new key definitions.
>>>>
>>>>   From what I've read so far, how this is done depends a lot on the
>>>> particular
>>>> emacs version.  Mine's 22.1.1.
>>>
>>>
>>> `(global-set-key (kbd "C-c p m") 'func-name)` doesn't work for you?
>>> The caveat to that is that modes down the line can possible shadow the
>>> binding. But that's easy enough to solve with `(eval-after-load…`
>>> forms.
>>
>> Thanks much for the reply.  I have almost no idea what you said, but it got
>> me to try the code which I already wrote (which I didn't do before because I
>> didn't think it would work, thought sure there was something missing).  The
>> code I already wrote and left sitting there untested for a couple-three
>> hours... it works!!
>>
>> Well that's a completely new experience for me.  B^D
>
> LOL. Good to know.
>
> As an aside, what are you confused about regarding what I said? Maybe
> I can help clear some things up for you?

What I read in several docs on the web implied that a command was needed 
first to create a sparse map (i.e., define-prefix-command) and then to 
assign it to a key prefix, in my case, "C-c p".  So when you 
wrote/asked, "`(global-set-key... doesn't work for you?", it didn't 
compute with me at all at first because it seemed like you were 
ignoring/forgetting all that.  But then 1% of me thought, maybe this guy 
is one of the 0.02% who knows what he's talking about, prompting me to 
try running my own code (which was likewise ignoring/forgoing sparse map 
creation etc.).  My crap not only ran without error, but it also worked 
perfectly!

The other part is the reference to "(eval-after-load..."; from your 
context I gather that it's meant to remedy some other code stepping on 
my keybindings (and perhaps too other definitions).  But how, when, and 
where to actually implement that function gribbles the laft whicher 
bonkhaft.




  reply	other threads:[~2013-02-20  9:35 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-19 23:26 create new key prefix ken
2013-02-20  1:20 ` Tim Visher
2013-02-20  1:36   ` ken
2013-02-20  1:41     ` Tim Visher
2013-02-20  9:35       ` ken [this message]
2013-02-20 17:44         ` Tim Visher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=512498CC.3070009@mousecar.com \
    --to=gebser@mousecar.com \
    --cc=help-gnu-emacs@gnu.org \
    --cc=tim.visher@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.