[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Getting last-command with arguments
From: |
Nicolas Richard |
Subject: |
Re: Getting last-command with arguments |
Date: |
Fri, 13 Sep 2013 15:58:33 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:
> Hi Nicolas,
>
> On Fri, Sep 13, 2013 at 01:34:04PM +0200, Nicolas Richard wrote:
>> Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:
>> > I am conditionally repeating the last command from inside an elisp
>> > function. So I look at `last-command' and decide. But now I want to
>> > see the original arguments: say the command was, M-2 M-x my-command RET,
>> > then I want to know 2 was passed to `my-command'. I am not sure how I
>> > can do that.
>>
>> The variable current-prefix-arg has that information.
>
> Thanks a lot. But did you mean last-prefix-arg instead?
No, but I had misread last-command for this-command. Sorry about that.
last-prefix-arg sounds like a good candidate from its docstring, but I
don't understand how it works:
(defun yf/foo (arg)
(interactive "i")
(message "Last: %s : %s\nThis: %s : %s"
last-command last-prefix-arg
this-command current-prefix-arg))
(local-set-key (kbd "<f5>") #'yf/foo)
Hitting RET RET C-u <f5> in a buffer shows me:
Last: newline : (4)
This: yf/foo : (4)
I expected
Last: newline : nil
This: yf/foo : (4)
would someone have an explanation ?
--
Nico.