[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Add moc to Non-GNU ELPA
From: |
Eduardo Ochs |
Subject: |
Re: Add moc to Non-GNU ELPA |
Date: |
Tue, 17 Dec 2024 14:47:29 -0300 |
On Tue, 17 Dec 2024 at 11:09, Psionic K <psionik@positron.solutions> wrote:
>
> Hi Eduard,
>
> You can preview the keyboard macro playback on the unstable branch.
> There is a simple example at the very end of the demo.org in the
> /test directory. `dslide-deck-start' and it will show you the rest
> of the way. You can also start at point right on that example or
> skip to it with the contents view.
>
> I also used `unread-key-events', just with a Laplace distribution
> based jittery timer for relatively human-appearing key entry speed.
> It's for "live" tech demos. You may file an issue for instant
> playback. In my rush to do human speed I forgot some people will
> just want a normal keyboard macro.
>
> Do play around with `dslide-kmacro-transcribe-set-mark'. Every macro
> you record will encode a step. It's extremely satisfying.
> https://github.com/positron-solutions/dslide/commit/c2ea982a809c1114b63638ac4c47e1292e11189e
>
> I just fixed some bugs and overhauled the start functions. I'm
> reluctant to push master even if I fix the tiny outstanding bug I
> found. I need to revert a small change somewhere that caused a
> regression in reverse image reveal when entering the slide in
> reverse.
Hi Psionic,
I git-cloned the unstable branch of dslide with these commands,
rm -Rfv /tmp/dslide/
cd /tmp/
git clone https://github.com/positron-solutions/dslide
cd /tmp/dslide/
git branch remotes/origin/unstable
and grepped for `unread'... your code only mentions
`unread-command-events' in one place - here:
https://github.com/positron-solutions/dslide/blob/b8e1399cc531c5d991e7f36fc48e420bc7e2621a/dslide.el#L2052
and if I understood correctly you don't encode delays as events - you
use a timer to push events with some delays between them... and your
demo is here,
https://github.com/positron-solutions/dslide/blob/b8e1399cc531c5d991e7f36fc48e420bc7e2621a/test/demo.org?plain=1#L448
in a line that looks like this, modulo line breaks:
#+dslide_kmacro: :frequency 0.09 :jitter 0.4 :keys [134217848 97 110
105 109 97 116 101 45 98 105 114 116 104 100 97 121 45 112 114 101
115 101 110 116 return 100 115 108 105 100 101 return]
I was thinking of doing something completely different. If a person
runs my defuns for `eek2' and `ee-eek2' from my other e-mail,
https://lists.gnu.org/archive/html/emacs-devel/2024-12/msg00689.html
then the second sexp below
(eek2 "<down>")
(ee-eek2 "<down>")
returns `((t . down))' - so the symbol `down' is the "name" of an
event (<- I haven't checked the correct terminology). It should be
possible to define a handful of events with "names" like `delay-1',
`delay-2', etc, and that run delays with different durations - and
then both sexps below will go down and insert a "Hello", but the
second one will have delays at two places...
(eek2 "RET Hello")
(eek2 "RET <delay-2> Hell <delay-1> o")
I have very little practice with Org and I'll be very busy in the next
two days, but after that I will have time to run your examples.
Cheers! =)
Eduardo Ochs
http://anggtwu.net/emacsconf2024.html