all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Very Specific Key Press Behaviour
@ 2009-06-22 20:33 Nordlöw
  2009-06-22 20:37 ` Nordlöw
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Nordlöw @ 2009-06-22 20:33 UTC (permalink / raw
  To: help-gnu-emacs

How can I bind an action to a key when it is pressed the n:th time,
possibly with different behaviour the 3:rd time compared to the 2:nd
and 1:st time. Can I combine it with define-prefix-command?

This is what I have now:
- TAB: Show Completion Menu - currently through define-prefix-command
()
- TAB + X: Perform Completion of type X

The second time I press X I want it to perform the same completion
again (if we iterate hippie-expand completions) somewhat like the
behaviour of C-x e e... .

Thanks in advance,
Nordlöw


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Very Specific Key Press Behaviour
  2009-06-22 20:33 Very Specific Key Press Behaviour Nordlöw
@ 2009-06-22 20:37 ` Nordlöw
  2009-06-23  5:20   ` Xah Lee
  2009-06-22 21:16 ` Joost Kremers
  2009-06-24  0:59 ` Ilya Zakharevich
  2 siblings, 1 reply; 5+ messages in thread
From: Nordlöw @ 2009-06-22 20:37 UTC (permalink / raw
  To: help-gnu-emacs

On Jun 22, 10:33 pm, Nordlöw <per.nord...@gmail.com> wrote:
> How can I bind an action to a key when it is pressed the n:th time,
> possibly with different behaviour the 3:rd time compared to the 2:nd
> and 1:st time. Can I combine it with define-prefix-command?
>
> This is what I have now:
> - TAB: Show Completion Menu - currently through define-prefix-command
> ()
> - TAB + X: Perform Completion of type X

- TAB + X: here means press TAB, release it and then press X.

/Nordlöw


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Very Specific Key Press Behaviour
  2009-06-22 20:33 Very Specific Key Press Behaviour Nordlöw
  2009-06-22 20:37 ` Nordlöw
@ 2009-06-22 21:16 ` Joost Kremers
  2009-06-24  0:59 ` Ilya Zakharevich
  2 siblings, 0 replies; 5+ messages in thread
From: Joost Kremers @ 2009-06-22 21:16 UTC (permalink / raw
  To: help-gnu-emacs

Nordlöw wrote:
> How can I bind an action to a key when it is pressed the n:th time,
> possibly with different behaviour the 3:rd time compared to the 2:nd
> and 1:st time.

this is essentially what yank-pop (bound to M-y) does. so check out its
implementation in simple.el. basically, you need the variables last-command
and this-command.


-- 
Joost Kremers                                      joostkremers@yahoo.com
Selbst in die Unterwelt dringt durch Spalten Licht
EN:SiS(9)


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Very Specific Key Press Behaviour
  2009-06-22 20:37 ` Nordlöw
@ 2009-06-23  5:20   ` Xah Lee
  0 siblings, 0 replies; 5+ messages in thread
From: Xah Lee @ 2009-06-23  5:20 UTC (permalink / raw
  To: help-gnu-emacs

On Jun 22, 1:37 pm, Nordlöw <per.nord...@gmail.com> wrote:
> On Jun 22, 10:33 pm, Nordlöw <per.nord...@gmail.com> wrote:
>
> > How can I bind an action to a key when it is pressed the n:th time,
> > possibly with different behaviour the 3:rd time compared to the 2:nd
> > and 1:st time. Can I combine it with define-prefix-command?
>
> > This is what I have now:
> > - TAB: Show Completion Menu - currently through define-prefix-command
> > ()
> > - TAB + X: Perform Completion of type X
>
> - TAB + X: here means press TAB, release it and then press X.

if i understand you correctly, you want the TAB key to perform a
action, and perform another action when TAB is followed by another
key. I don't think you can do that. Your tab key is a prefix key, you
cannot have prefix key perform a action.

you might hack it with OS's help, such as how Windows's Alt key
behaves or the Windows Log key, but that's kinda outside of emacs.

however, if you want a key combo to perform different action depending
how many times that key combo has been pressed, you can do it by
comparing the var last-command and this-command.

  Xah
∑ http://xahlee.org/^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Very Specific Key Press Behaviour
  2009-06-22 20:33 Very Specific Key Press Behaviour Nordlöw
  2009-06-22 20:37 ` Nordlöw
  2009-06-22 21:16 ` Joost Kremers
@ 2009-06-24  0:59 ` Ilya Zakharevich
  2 siblings, 0 replies; 5+ messages in thread
From: Ilya Zakharevich @ 2009-06-24  0:59 UTC (permalink / raw
  To: help-gnu-emacs

On 2009-06-22, Nordlöw <per.nordlow@gmail.com> wrote:
> How can I bind an action to a key when it is pressed the n:th time,
> possibly with different behaviour the 3:rd time compared to the 2:nd
> and 1:st time. Can I combine it with define-prefix-command?

mult-press.el is a part of

  ilyaz.org/software/emacs/emacs-el-src-2005-09.zip

Hope this helps,
Ilya


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-06-24  0:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-22 20:33 Very Specific Key Press Behaviour Nordlöw
2009-06-22 20:37 ` Nordlöw
2009-06-23  5:20   ` Xah Lee
2009-06-22 21:16 ` Joost Kremers
2009-06-24  0:59 ` Ilya Zakharevich

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.