[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Emacs Interactive functions with arguments
From: |
Christopher Dimech |
Subject: |
Emacs Interactive functions with arguments |
Date: |
Fri, 9 Oct 2020 13:52:49 +0200 |
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)
)
- Emacs Interactive functions with arguments,
Christopher Dimech <=