unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Demonstration mode...
@ 2005-06-23 19:05 David Kastrup
  2005-06-26 15:04 ` Richard M. Stallman
  0 siblings, 1 reply; 10+ messages in thread
From: David Kastrup @ 2005-06-23 19:05 UTC (permalink / raw)



Hi,

whenever I find myself doing a demonstration of Emacs capabilities and
features, I find myself using keyboard commands.  That is not helpful
to onlookers who just see magic happening.

So I have to force myself to use the mouse.

Now what would be very handy is something quite similar to some help
messages after M-x commands:

whenever Emacs finds that I used a key sequence from the current major
mode (it should be configurable which keymaps it consults for a
particular demo) that is also available as a menu, Emacs should fake
myself using the mouse: it should move the mouse cursor (like it
manages in mouse-avoidance mode) to the respective menu, hover a bit,
"click" it open, move the cursor down to the correct menu, hover a
bit, click on the menu, show the action.

If any dialogs get popped up in consequence, they should be mouse
dialogs, in the spirit of the mouse faking.

Of course, I don't want a "busy" cursor while this emulation is going
on.

If this sort of emulation works with recorded keyboard macros, and one
can edit delays into it, that would be a plus: one could replay a
complete demo without actually needing to touch the keyboard.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

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

* Re: Demonstration mode...
  2005-06-23 19:05 Demonstration mode David Kastrup
@ 2005-06-26 15:04 ` Richard M. Stallman
  2005-06-26 18:57   ` David Kastrup
  0 siblings, 1 reply; 10+ messages in thread
From: Richard M. Stallman @ 2005-06-26 15:04 UTC (permalink / raw)
  Cc: emacs-devel

    whenever I find myself doing a demonstration of Emacs capabilities and
    features, I find myself using keyboard commands.  That is not helpful
    to onlookers who just see magic happening.

    So I have to force myself to use the mouse.

I don't understand how using the mouse makes things clearer.
Is it that you use menus to invoke the commands?  How inconvenient.

I used to teach classes in editing with Emacs, and people would
watch a big screen acting as a secondary monitor for my computer.
I would tell them what I was typing as I typed it, and go slow enough
that they could follow what I did and what effect it had.

    whenever Emacs finds that I used a key sequence from the current major
    mode (it should be configurable which keymaps it consults for a
    particular demo) that is also available as a menu, Emacs should fake
    myself using the mouse:

Why not just display the keys you type in another window?
That would also enable people to follow what you are doing.
It would be easier to implement, and it would show them
a good method to imitate, instead of a bad one.

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

* Re: Demonstration mode...
  2005-06-26 15:04 ` Richard M. Stallman
@ 2005-06-26 18:57   ` David Kastrup
  2005-06-27  5:37     ` Richard M. Stallman
  0 siblings, 1 reply; 10+ messages in thread
From: David Kastrup @ 2005-06-26 18:57 UTC (permalink / raw)
  Cc: emacs-devel

"Richard M. Stallman" <rms@gnu.org> writes:

>     whenever I find myself doing a demonstration of Emacs capabilities and
>     features, I find myself using keyboard commands.  That is not helpful
>     to onlookers who just see magic happening.
>
>     So I have to force myself to use the mouse.
>
> I don't understand how using the mouse makes things clearer.

It is visible on the computer screen.  A demonstration nowadays
usually consists of having a laptop connected to a beamer.  Using the
keyboard makes the screen change "magically" which tells people
"masters will be able to work this, not I myself".  Using the menus
shows what one is doing on the screen, and it suggests that it is easy
to find out what to do.

> Is it that you use menus to invoke the commands?  How inconvenient.

Definitely.  That's why I want to use the keyboard, but have it look
like I would be using the mouse.  Which also shows the keyboard
shortcuts in the menus.

> I used to teach classes in editing with Emacs, and people would
> watch a big screen acting as a secondary monitor for my computer.  I
> would tell them what I was typing as I typed it, and go slow enough
> that they could follow what I did and what effect it had.

That's for plain tutorials.  I am more interested in frontal talks
where just I myself am doing the work.  The time slots I have
available on typical conferences are not sufficient for teaching
people to do everything that is possible within Emacs for writing
LaTeX texts.  I am happy if I manage just to _show_ it.

>     whenever Emacs finds that I used a key sequence from the current
>     major mode (it should be configurable which keymaps it consults
>     for a particular demo) that is also available as a menu, Emacs
>     should fake myself using the mouse:
>
> Why not just display the keys you type in another window?
> That would also enable people to follow what you are doing.
> It would be easier to implement, and it would show them
> a good method to imitate, instead of a bad one.

The menus show the keyboard shortcuts.  Having two frames/windows to
watch will probably cost more concentration than following the visual
lead of a moving mouse cursor.

I am not saying that a demonstration mode showing keyboard shortcuts
in a separate window would not also be a good idea: particularly for
tutorials it might be pretty good, particularly as people can take
their time typing the keysequences off (as long as they don't
disappear, but are kept as a sort of a log), something which is not
possible when trying to demonstrate using the mouse.

However, for a frontal demonstration, the mouse thingy still appears
more appealing to me, in particular when trying to recruit new users.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

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

* Re: Demonstration mode...
  2005-06-26 18:57   ` David Kastrup
@ 2005-06-27  5:37     ` Richard M. Stallman
  2005-06-27 14:04       ` David Kastrup
  2005-06-27 15:57       ` Drew Adams
  0 siblings, 2 replies; 10+ messages in thread
From: Richard M. Stallman @ 2005-06-27  5:37 UTC (permalink / raw)
  Cc: emacs-devel

    > Is it that you use menus to invoke the commands?  How inconvenient.

    Definitely.  That's why I want to use the keyboard, but have it look
    like I would be using the mouse.  Which also shows the keyboard
    shortcuts in the menus.

But most Emacs keyboard commands don't have any equivalent menu items.
So this could only work for a narrow subset of possible input.

What if you use M-x to enter commands that are worth showing people?
They will see the "M-x COMMANDNAME" in the minibuffer, and that will
tell them what you're doing as well as a menu item would.

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

* Re: Demonstration mode...
  2005-06-27  5:37     ` Richard M. Stallman
@ 2005-06-27 14:04       ` David Kastrup
  2005-06-28  4:17         ` Richard M. Stallman
  2005-06-27 15:57       ` Drew Adams
  1 sibling, 1 reply; 10+ messages in thread
From: David Kastrup @ 2005-06-27 14:04 UTC (permalink / raw)
  Cc: emacs-devel

"Richard M. Stallman" <rms@gnu.org> writes:

>     > Is it that you use menus to invoke the commands?  How inconvenient.
>
>     Definitely.  That's why I want to use the keyboard, but have it look
>     like I would be using the mouse.  Which also shows the keyboard
>     shortcuts in the menus.
>
> But most Emacs keyboard commands don't have any equivalent menu
> items.  So this could only work for a narrow subset of possible
> input.

Yes, but the stuff I am demonstrating pretty much falls into the
categories that would be also in menus and on a printed help sheet.

Of course I would not want to have this sort of thing work on things
like plain cursor movement commands: that's why I said that it would
be vital to specify the keymaps that should be watched for
corresponding menu entries: the normal editing keymaps I would not
usually want to be demonstrated that way.

> What if you use M-x to enter commands that are worth showing people?
> They will see the "M-x COMMANDNAME" in the minibuffer, and that will
> tell them what you're doing as well as a menu item would.

Problem is that it does not look like something every rank beginner
could do himself easily without any preparation.

The sort of talks I do usually want to point out to people that we are
no longer in the dark ages where a menuless terminal application
started throwing strange help screens at hapless users the first time
they made the mistake of hitting "Backspace".

I know that the menu approach is about the most inefficient way of
accessing Emacs that is available.  But it also is the least scary
one, and it is a tolerable starting point.

Basically, it is a teaching and documentation aid.  Stuff like that
acts like a multiplier.

Another thing in the multiplier area that I'd like is something that
took a menu, and cranked out a Texinfo page with the menu structure as
items, and the function help strings as corresponding explanation.

Of course, the thing should be flexible enough to produce other
markup, like HTML that showed the menus, popped up the help strings on
mouse-over, and did some appropriate action when clicking on the menus
itself (like changing an underlying screenshot of the main Emacs
"frame" to simulate the actual actions a real Emacs would do).

Stuff like that: possibilities of extracting information automatically
about the manner of working with Emacs.

If every Tom, Dick and Jane could easily create standard screen shots
or pseudo screen shots and HTML demo pages and LaTeX chapters and
online "movie" demonstrations about his favorite modes, I think this
would help a lot with proselytizing.

Anyway, I was just brainstorming a bit, and wanted to mention some of
this stuff before I forget about it again.  I am doing quite a few
talks about Emacs/AUCTeX these days, and am planning to write some
dead-tree kind of documentation in future (and have some web pages to
maintain), and those are the sort of things that I repeatedly thought
"would be nice to have, and not technically infeasible".

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

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

* RE: Demonstration mode...
  2005-06-27  5:37     ` Richard M. Stallman
  2005-06-27 14:04       ` David Kastrup
@ 2005-06-27 15:57       ` Drew Adams
  2005-06-27 16:58         ` David Kastrup
  1 sibling, 1 reply; 10+ messages in thread
From: Drew Adams @ 2005-06-27 15:57 UTC (permalink / raw)


        I want to use the keyboard, but have it look
        like I would be using the mouse.  Which also shows the keyboard
        shortcuts in the menus.

    But most Emacs keyboard commands don't have any equivalent menu
    items. So this could only work for a narrow subset of possible input.

    What if you use M-x to enter commands that are worth showing people?
    They will see the "M-x COMMANDNAME" in the minibuffer, and that will
    tell them what you're doing as well as a menu item would.

And what's wrong with using the mouse and menus to demonstrate use of the
mouse and menus - IOW, why don't you just show the audience directly what
you're trying to show them, instead of using the keyboard indirectly to show
them the use of menus?

Would there be a benefit for the audience in menu/mouse faking, or would the
demo mode be only for the demonstrator's benefit?

The original post:

    whenever I find myself doing a demonstration of Emacs capabilities
    and features, I find myself using keyboard commands.  That is not
    helpful to onlookers who just see magic happening.

Yes. And if you use a menu-faking demo mode and the audience can see both
your use of the keyboard and the resulting mouse-menu-magic on the screen,
they might be even more mystified.

    So I have to force myself to use the mouse.

That sounds like it would be the clearest thing (to observers) to do: use
`M-x command-name' for well-chosen commands with good names ("worth
showing"); and use menus for other commands.

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

* Re: Demonstration mode...
  2005-06-27 15:57       ` Drew Adams
@ 2005-06-27 16:58         ` David Kastrup
  0 siblings, 0 replies; 10+ messages in thread
From: David Kastrup @ 2005-06-27 16:58 UTC (permalink / raw)
  Cc: Emacs-Devel

"Drew Adams" <drew.adams@oracle.com> writes:

>         I want to use the keyboard, but have it look
>         like I would be using the mouse.  Which also shows the keyboard
>         shortcuts in the menus.
>
>     But most Emacs keyboard commands don't have any equivalent menu
>     items. So this could only work for a narrow subset of possible input.
>
>     What if you use M-x to enter commands that are worth showing people?
>     They will see the "M-x COMMANDNAME" in the minibuffer, and that will
>     tell them what you're doing as well as a menu item would.
>
> And what's wrong with using the mouse and menus to demonstrate use
> of the mouse and menus - IOW, why don't you just show the audience
> directly what you're trying to show them, instead of using the
> keyboard indirectly to show them the use of menus?
>
> Would there be a benefit for the audience in menu/mouse faking, or
> would the demo mode be only for the demonstrator's benefit?

Mostly the latter.  The former would benefit by smoother movements and
action.  Consider this as a sort of mini-demonstration movies that the
demonstrator can recite by using the corresponding key sequence.

Yes, this is for the benefit of the demonstrator: he can do what he is
used to doing instead of having to hunt through menus he never touches
usually.

> The original post:
>
>     whenever I find myself doing a demonstration of Emacs capabilities
>     and features, I find myself using keyboard commands.  That is not
>     helpful to onlookers who just see magic happening.
>
> Yes. And if you use a menu-faking demo mode and the audience can see
> both your use of the keyboard and the resulting mouse-menu-magic on
> the screen, they might be even more mystified.

I doubt they are keeping a watch on my fingers instead of the silver
screen.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

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

* Re: Demonstration mode...
  2005-06-27 14:04       ` David Kastrup
@ 2005-06-28  4:17         ` Richard M. Stallman
  2005-06-28  6:59           ` David Kastrup
  0 siblings, 1 reply; 10+ messages in thread
From: Richard M. Stallman @ 2005-06-28  4:17 UTC (permalink / raw)
  Cc: emacs-devel

    Another thing in the multiplier area that I'd like is something that
    took a menu, and cranked out a Texinfo page with the menu structure as
    items, and the function help strings as corresponding explanation.

You should be able to write that in Lisp easily enough.
The menu format is thoroughly documented.

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

* Re: Demonstration mode...
  2005-06-28  4:17         ` Richard M. Stallman
@ 2005-06-28  6:59           ` David Kastrup
  2005-06-28 21:29             ` Richard M. Stallman
  0 siblings, 1 reply; 10+ messages in thread
From: David Kastrup @ 2005-06-28  6:59 UTC (permalink / raw)
  Cc: emacs-devel

"Richard M. Stallman" <rms@gnu.org> writes:

>     Another thing in the multiplier area that I'd like is something
>     that took a menu, and cranked out a Texinfo page with the menu
>     structure as items, and the function help strings as
>     corresponding explanation.
>
> You should be able to write that in Lisp easily enough.
> The menu format is thoroughly documented.

But that is not what ends up in the menus/keymaps.  There is some
compilation/rearrangement involved there, and the actual structures
are quite more complex.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

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

* Re: Demonstration mode...
  2005-06-28  6:59           ` David Kastrup
@ 2005-06-28 21:29             ` Richard M. Stallman
  0 siblings, 0 replies; 10+ messages in thread
From: Richard M. Stallman @ 2005-06-28 21:29 UTC (permalink / raw)
  Cc: emacs-devel

    > You should be able to write that in Lisp easily enough.
    > The menu format is thoroughly documented.

    But that is not what ends up in the menus/keymaps.  There is some
    compilation/rearrangement involved there, and the actual structures
    are quite more complex.

What aspect of the keymap format is not documented?

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

end of thread, other threads:[~2005-06-28 21:29 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-06-23 19:05 Demonstration mode David Kastrup
2005-06-26 15:04 ` Richard M. Stallman
2005-06-26 18:57   ` David Kastrup
2005-06-27  5:37     ` Richard M. Stallman
2005-06-27 14:04       ` David Kastrup
2005-06-28  4:17         ` Richard M. Stallman
2005-06-28  6:59           ` David Kastrup
2005-06-28 21:29             ` Richard M. Stallman
2005-06-27 15:57       ` Drew Adams
2005-06-27 16:58         ` David Kastrup

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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).