* Emacs Interactive functions with arguments
@ 2020-10-09 11:52 Christopher Dimech
2020-10-09 14:10 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-09 20:10 ` Joost Kremers
0 siblings, 2 replies; 4+ messages in thread
From: Christopher Dimech @ 2020-10-09 11:52 UTC (permalink / raw)
To: Help Gnu Emacs
Dear Compeers,
I understand a few things about Emacs Functions.
For instance, the following function uses simply
an (interactive) declaration. This means that
IntchgW will not accept the passing of arguments
to it.
( defun IntchgW ()
"Interchanges words using (transpose-words arg)."
(interactive)
(transpose-words -2)
)
Have also constructed the function IntchgW to interchange
words.
( defun IntchgW (arg)
"Interchanges words using (transpose-words arg)."
(interactive "NType Arg to transpose-words: ")
(transpose-words arg)
)
I can call the function using two methods
(1) Using "M-x IntchgW <Ret> -2 <Ret>"
Arg is inputted through the Mini-Buffer.
(2) Using "C-u -2 M-x IntchgW"
Here Arg is passed as a prefix to IntchgW.
And if I use (interactive "nType Arg to transpose-words: "),
I can only pass the argument Arg using the Min-Buffer
"M-x IntchgW <Ret> -2 <Ret>". I cannot pass Arg as a prefix
to IntchgW using "C-u -2 M-x IntchgW"
But then I have the following functions. And the effect of the
(interactive "p") and (interactive "pType Arg to transpose-words: ")
is confusing to me.
Besides general comments, I have some specific question.
(1) The two constructs (interactive "p") and (interactive "pMessage: ")
are valid, but are they equivalent?
(2) How is (interactive "p") different from (interactive "N").
They both represent numeric arguments, but what is different?
Reagrds
( defun IntchgWp (arg)
"TODO"
(interactive "p")
(transpose-words arg)
)
( defun IntchgW--pmesg (arg)
"TODO"
(interactive "pType Arg to transpose-words: ")
(transpose-words arg)
)
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Emacs Interactive functions with arguments
2020-10-09 11:52 Emacs Interactive functions with arguments Christopher Dimech
@ 2020-10-09 14:10 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-09 14:42 ` Christopher Dimech
2020-10-09 20:10 ` Joost Kremers
1 sibling, 1 reply; 4+ messages in thread
From: Emanuel Berg via Users list for the GNU Emacs text editor @ 2020-10-09 14:10 UTC (permalink / raw)
To: help-gnu-emacs
Christopher Dimech wrote:
> Besides general comments, I have some specific
> question. (1) The two constructs (interactive "p")
> and (interactive "pMessage: ") are valid, but are
> they equivalent? (2) How is (interactive "p")
> different from (interactive "N"). They both
> represent numeric arguments, but what is different?
C-h f interactive RET
> ( defun IntchgWp (arg)
> "TODO"
> (interactive "p")
> (transpose-words arg)
> )
>
> ( defun IntchgW--pmesg (arg)
> "TODO"
> (interactive "pType Arg to transpose-words: ")
> (transpose-words arg)
> )
C-h f defalias RET
--
underground experts united
http://user.it.uu.se/~embe8573
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Emacs Interactive functions with arguments
2020-10-09 14:10 ` Emanuel Berg via Users list for the GNU Emacs text editor
@ 2020-10-09 14:42 ` Christopher Dimech
0 siblings, 0 replies; 4+ messages in thread
From: Christopher Dimech @ 2020-10-09 14:42 UTC (permalink / raw)
To: moasenwood; +Cc: help-gnu-emacs
I set my email settings for sending plain text as it will be easier to
read, but your comment
confirmed that with plain text, all the bloody formatting is removed.
Terrible. Apologies
for that Emanuel.
Thanks for showeing me dow to call desrcibe function using the
mini-buffer.
Regards
C*
Sent: Friday, October 09, 2020 at 4:10 PM
From: "Emanuel Berg via Users list for the GNU Emacs text editor"
<help-gnu-emacs@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: Emacs Interactive functions with arguments
Christopher Dimech wrote:
> Besides general comments, I have some specific
> question. (1) The two constructs (interactive "p")
> and (interactive "pMessage: ") are valid, but are
> they equivalent? (2) How is (interactive "p")
> different from (interactive "N"). They both
> represent numeric arguments, but what is different?
C-h f interactive RET
> ( defun IntchgWp (arg)
> "TODO"
> (interactive "p")
> (transpose-words arg)
> )
>
> ( defun IntchgW--pmesg (arg)
> "TODO"
> (interactive "pType Arg to transpose-words: ")
> (transpose-words arg)
> )
C-h f defalias RET
--
underground experts united
[1]http://user.it.uu.se/~embe8573
[2]https://dataswamp.org/~incal
References
1. http://user.it.uu.se/~embe8573
2. https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Emacs Interactive functions with arguments
2020-10-09 11:52 Emacs Interactive functions with arguments Christopher Dimech
2020-10-09 14:10 ` Emanuel Berg via Users list for the GNU Emacs text editor
@ 2020-10-09 20:10 ` Joost Kremers
1 sibling, 0 replies; 4+ messages in thread
From: Joost Kremers @ 2020-10-09 20:10 UTC (permalink / raw)
To: Christopher Dimech; +Cc: help-gnu-emacs
On Fri, Oct 09 2020, Christopher Dimech wrote:
[snip]
The interactive codes "n" and "N" both return a number. "n" *always* reads a
number in the minibuffer, so any prefix argument the user types is ignored. "N"
returns the prefix argument as a number, but will ask for a number in the
minibuffer if there is no prefix argument.
"p" OTOH always returns the prefix argument as a number, even if the user didn't
type one. (In that case, the value is 1).
> Besides general comments, I have some specific question.
> (1) The two constructs (interactive "p") and (interactive "pMessage: ")
> are valid, but are they equivalent?
"p" doesn't take a prompt, because it never asks for input through the
minibuffer. So if you provide a prompt, it is simply ignored.
> (2) How is (interactive "p") different from (interactive "N").
> They both represent numeric arguments, but what is different?
"p" never asks for a number in the minibufffer, "N" does, if necessary.
--
Joost Kremers
Life has its moments
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-10-09 20:10 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-09 11:52 Emacs Interactive functions with arguments Christopher Dimech
2020-10-09 14:10 ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-10-09 14:42 ` Christopher Dimech
2020-10-09 20:10 ` Joost Kremers
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).