emacs-devel
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]