|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
(defun o () (interactive) (find-angg "ORG/2024-bash-test-blocks.org"))
(defun o () (interactive) (find-fline "~/ORG/2024-piano-roll-macros.org"))
(defun e () (interactive) (find-angg "elisp/2024-piano-roll-macros.el"))
(defun p () (interactive) (find-fline "/tmp/pianola.jpg"))
;; (find-youtubedl-links "/tmp/" "Pianola_playing_The_Entertainer" "07krQ661fok" ".webm" "pianola")
;; (code-video "pianolavideo" "/tmp/Pianola_playing_The_Entertainer-07krQ661fok.webm")
;; (find-pianolavideo "1:26")
;; (find-angg "ORG/2024-trying-eev-with-a-sexp.org")
;; (find-angg "elisp/emacsconf2024.el")
;; (find-angg "elisp/2024-piano-roll-macros.el")
;; (find-TH "2024-bash-test-blocks")
;; (font "Noto Mono 19" :p)
;; (font "Noto Mono 15" :p)
;; (find-2a nil '(p))
;; (font "Noto Mono 14" :p)
Piano roll macros
=================
Eduardo Ochs
2024dec31
Introduction:
(eek "RET RET Hello")
(eek2 "RET RET Hello")
(eeks 1.25 0.25 "RET RET Hello")
More info:
http://anggtwu.net/#eev
http://anggtwu.net/2024-piano-roll-macros.html
(find-eev-quick-intro "2. Evaluating Lisp")
(find-eev-quick-intro "3. Elisp hyperlinks")
(find-eev-quick-intro "series of keys" "eek")
;; (font "Noto Mono 19" :p)
1. How `eek' and `eek2' work
============================
(find-efunction 'eek)
(eek "RET Hello")
(eek2 "RET Hello")
(ee-eek2 "RET Hello")
(eek2 '((t . ?\r) (t . ?H) (t . ?e) (t . ?l) (t . ?l) (t . ?o)))
(eek2 '((t . 13) (t . 72) (t . 101) (t . 108) (t . 108) (t . 111)))
(progn
(eek2 '((t . 13)))
(eek2 '((t . 72)))
(eek2 '((t . 101)))
(eek2 '((t . 108)))
(eek2 '((t . 108)))
(eek2 '((t . 111))))
;; (font "Noto Mono 18" :p)
2. Spacing the events with timers
=================================
(progn
(eek2 '((t . 13)))
(eek2 '((t . 72)))
(eek2 '((t . 101)))
(eek2 '((t . 108)))
(eek2 '((t . 108)))
(eek2 '((t . 111))))
(progn
(run-at-time 0.25 nil 'eval '(eek2 '((t . 13))))
(run-at-time 0.75 nil 'eval '(eek2 '((t . 72))))
(run-at-time 1.25 nil 'eval '(eek2 '((t . 101))))
(run-at-time 1.75 nil 'eval '(eek2 '((t . 108))))
(run-at-time 2.25 nil 'eval '(eek2 '((t . 108))))
(run-at-time 2.75 nil 'eval '(eek2 '((t . 111)))))
(eeks 0.25 0.5 "RET Hello")
;; (font "Noto Mono 18" :p)
3. How the `run-at-time's are created
=====================================
(eeks 0.25 0.5 "RET Hello")
(progn
(run-at-time 0.25 nil 'eval '(eek2 '((t . 13))))
(run-at-time 0.75 nil 'eval '(eek2 '((t . 72))))
(run-at-time 1.25 nil 'eval '(eek2 '((t . 101))))
(run-at-time 1.75 nil 'eval '(eek2 '((t . 108))))
(run-at-time 2.25 nil 'eval '(eek2 '((t . 108))))
(run-at-time 2.75 nil 'eval '(eek2 '((t . 111)))))
http://anggtwu.net/2024-eev-for-5-year-olds.html#taking-apart
(font "Noto Mono 13")
(find-angg "elisp/2024-piano-roll-macros.el")
(find-angg "elisp/2024-piano-roll-macros.el" "macro")
;; (font "Noto Mono 18" :p)
4. Do try this at home
======================
http://anggtwu.net/2024-piano-roll-macros.html
(find-wget-elisp "http://anggtwu.net/elisp/2024-piano-roll-macros.el")
Thanks!
a) for your attention
b) to Bruno Macedo -
many things in this video
were inspired by our conversations