[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Disabling M-q
From: |
B. T. Raven |
Subject: |
Re: Disabling M-q |
Date: |
Sat, 18 May 2013 12:44:13 -0500 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120907 Thunderbird/15.0.1 |
> "B. T. Raven" <btraven@nihilo.net> writes:
>
>>> A friend asked how to disable M-q. My first thought was:
>>> (local-unset-key (kbd "\M-q"))
This was the original question. Should M be escaped in a string here?
Did you try the vector description of "M-q"? I notice that (kbd <key>...
returns a specific vector but the vector [(meta q)] just evaluates to
itself. Have you tried:
(define-key (current-local-map) [(meta q)] nil)
??
>>> or
>>> (local-set-key (kbd "M-q") nil)
>>>
>>> But both did not work. I am now using:
>>> (local-set-key (kbd "M-q") "")
>>>
>>> and this works. Is this the best way, or is there a better way?
>>
>> How about either
>>
>> (global-unset-key [(meta q)]
>>
>> or
>>
>> (local-unset-key [(meta q)]
>
> I wrote a couple of lines you can experiment with. Use `C-h w' for the
> functions and `C-x C-e' to change keybinding.
>
> The local binding will shadow the global. If the global is shadowed,
> it won't report any key on `C-h w'. But, as soon as you unset the
> local, or set it to the nils, the global is back on. When the local is
> set to the empty string, the shadow is on (i.e., the global is off)
> only this "shadow" doesn't do anything.
>
> Like I said, play around with it.
>
> (defun test-message-local () (interactive) (message "local check"))
> (defun test-message-global () (interactive) (message "global check"))
> (global-unset-key (kbd "C-M-w")) ; either unset both
> (local-unset-key (kbd "C-M-w"))
> (global-set-key (kbd "C-M-w") 'test-message-global) ; test C-h w here
> (local-set-key (kbd "C-M-w") 'test-message-local) ; shadows global
> (local-set-key (kbd "C-M-w") nil) ; these four - global *on*
> (local-set-key (kbd "C-M-w") 'nil)
> (local-set-key (kbd "C-M-w") ())
> (local-set-key (kbd "C-M-w") '())
> (local-set-key (kbd "C-M-w") "") ; this - local "nothing" shadow
>
- Disabling M-q, Cecil Westerhof, 2013/05/15
- Re: Disabling M-q, Yuri Khan, 2013/05/15
- Re: Disabling M-q, B. T. Raven, 2013/05/18
- Re: Disabling M-q, Emanuel Berg, 2013/05/18
- Re: Disabling M-q,
B. T. Raven <=
- Re: Disabling M-q, Cecil Westerhof, 2013/05/21
- RE: Disabling M-q, Drew Adams, 2013/05/21
- Re: Disabling M-q, B. T. Raven, 2013/05/21
- Message not available
- Re: Disabling M-q, Cecil Westerhof, 2013/05/21
- RE: Disabling M-q, Drew Adams, 2013/05/21
- Message not available
- Re: Disabling M-q, B. T. Raven, 2013/05/21
- RE: Disabling M-q, Drew Adams, 2013/05/22
Message not available