all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Proposal for a insert-kbd-macro that inserts "real" elisp
@ 2008-01-03 13:44 Ævar Arnfjörð Bjarmason
  2008-01-03 22:42 ` Juri Linkov
  0 siblings, 1 reply; 3+ messages in thread
From: Ævar Arnfjörð Bjarmason @ 2008-01-03 13:44 UTC (permalink / raw)
  To: emacs-devel


The following came up on
http://www.emacswiki.org/cgi-bin/wiki/KeyboardMacrosTricks and I thought
I'd post it here:

>> ChristopherSmith wrote:
>> Is there a way to convert an existing keyboard macro to elisp code?
>> 
>> The use-case for such a facility would be to explore the way emacs
>> works internally. In cough MS Office cough applications, you can
>> discover much about the object model from recording macros (though
>> the comparison may be unfair). –
> avar wrote:
> 
> You can do this with M-x insert-kbd-macro but the result is probably
> not to your liking. If I do:
> 
>  C-x (
>  C-n
>  foo
>  C-x )
>  M-x name-last-kbd-macro RET newline-and-foo
>  M-x insert-kbd-macro RET newline-and-foo RET
> 
> emacs will insert the following into the buffer:
> 
>  (fset 'newline-and-foo
>    "\C-nfoo")
> 
> I would very much like to be able to insert something like this:
> 
>   (defun newline-and-foo ()
>     (interactive)
>     (next-line)
>     (insert "foo"))
> 
> But it appears emacs does not have this feature. A casual glance at
> the source for insert-kbd-macro in macros.el would suggest that the
> best way to go about this would be to write a function that called
> (key-binding) on each key it was about to insert and inserted the
> corresponding function name instead.

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

end of thread, other threads:[~2008-01-04  5:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-01-03 13:44 Proposal for a insert-kbd-macro that inserts "real" elisp Ævar Arnfjörð Bjarmason
2008-01-03 22:42 ` Juri Linkov
2008-01-04  5:36   ` Ævar Arnfjörð Bjarmason

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.