Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
-- This file: -- http://anggtwu.net/SUBTITLES/2025-modern.lua.html -- http://anggtwu.net/SUBTITLES/2025-modern.lua -- (find-angg "SUBTITLES/2025-modern.lua") -- Author: Eduardo Ochs <eduardoochs@gmail.com> -- -- (defun l () (interactive) (find-angg "SUBTITLES/2025-modern.lua")) -- (defun l () (interactive) (find-SUBS "2025-modern.lua")) -- (defun b () (interactive) (find-TH "2025-modern")) -- (defun p () (interactive) (find-TH "2025-modern")) -- (defun R () (interactive) (ee-recompile-SUBTITLES-0)) -- (defun r () (interactive) (ee-recompile-SUBTITLES-3)) -- (defun r () (interactive) (ee-recompile-SUBTITLES-1)) -- (define-key eev-mode-map (kbd "M-r") 'r) -- -- Skel: (find-subs-links "2025modern") -- Old: (find-editeevsubtitles-links-1 "2025modern") -- (find-efunction 'find-editeevsubtitles-links-1) -- Yttr: (find-yttranscript-links "2025modern" "BRbOXmvkFFA") -- Info: (find-1stclassvideo-links "2025modern") -- Play: (find-2025modernvideo "0:00") -- -- I use the code below to generate the subtitles in .vtt. -- ee_dofile "~/LUA/Subtitles.lua" -- (find-angg "LUA/Subtitles.lua") --[[ -- (find-angg "LUA/Subtitles.lua") ** Run the .lua and tell it to ** write the .vtt - by default in /tmp/ * * (eepitch-lua51) * (eepitch-kill) * (eepitch-lua51) dofile "2025-modern.lua" sts = Subtitles.fromsexps(subs_bigstr):addtime("20:38") -- sts.lang = "pt-BR" = sts outfname = "$S/http/anggtwu.net/eev-videos/2025-modern.vtt" outfname = "/tmp/2025-modern.vtt" out = sts:vtt().."\n\n" ee_writefile(outfname, out) -- (find-fline "/tmp/2025-modern.vtt") ** Test the .vtt ** (find-2025modernvideo "0:00") ** Select /tmp/ or ee-eevvideosdir ** (find-eevvideosfile "") ** (find-eevvideosfile "" "2025-modern.mp4") ** (find-eevvideossh0 "cp -v 2025-modern.mp4 /tmp/") ** (code-video "2025modernvideo" "/tmp/2025-modern.mp4") ** (code-video "2025modernvideo" "$S/http/anggtwu.net/eev-videos/2025-modern.mp4") ** (find-2025modernvideo "0:00") ** Upload the 2025-modern.vtt ** to http://anggtwu.net/eev-videos/ * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) cd /tmp/ scp 2025-modern.vtt $LINP/eev-videos/ scp 2025-modern.vtt $LINS/eev-videos/ Scp-np 2025-modern.vtt $TWUP/eev-videos/ Scp-np 2025-modern.vtt $TWUS/eev-videos/ ** Upload the subtitles to youtube ** http://www.youtube.com/watch?v=BRbOXmvkFFA ** Check that the "psne subtitles" thing works ** (find-1stclassvideo-links "2025modern") --]] --[[ * (eepitch-lua51) * (eepitch-kill) * (eepitch-lua51) dofile "2025-modern.lua" for li in subs_bigstr:gmatch("([^\n]+)") do local time,text = li:match('^.-"(.-)".-"(.*)"%)$') text = text:gsub("\\(.)", "%1") if time then print(" "..time.." "..text) end end --]] subs_bigstr = [==[ (find-2025modernvideo "0:00" " ") % (find-2025modernvideo "0:01" "Hi! My name is Eduardo Ochs. I'm the") % (find-2025modernvideo "0:03" "author of an Emacs package called eev and") % (find-2025modernvideo "0:06" "the title of this video is") % (find-2025modernvideo "0:09" "\"Some problems of modernizing Emacs\".") 1. The main themes of this video % (find-2025modernvideo "0:11" "Here is a summary of the main themes") % (find-2025modernvideo "0:14" "of this video. I'm going to talk mainly") % (find-2025modernvideo "0:16" "about these four things here. The first") % (find-2025modernvideo "0:18" "one is that Emacs has changed a lot in its") % (find-2025modernvideo "0:21" "recent versions, and now it has lots of") % (find-2025modernvideo "0:24" "types... so if we want to look under the") % (find-2025modernvideo "0:27" "hood and to understand what Emacs") % (find-2025modernvideo "0:30" "really does we are going to stumble on") % (find-2025modernvideo "0:33" "lots of types... and the") % (find-2025modernvideo "0:36" "current tree of classes and types") % (find-2025modernvideo "0:40" "looks like this... that is,") % (find-2025modernvideo "0:43" "is quite big.") % (find-2025modernvideo "0:52" "The second theme is that people used") % (find-2025modernvideo "0:55" "to say things like \"Anyone can learn Lisp") % (find-2025modernvideo "0:59" "in one day\"... I'm going to explain") % (find-2025modernvideo "1:02" "this quote, and I'm also going to show") % (find-2025modernvideo "1:07" "that now this is gone... anyway. This is a") % (find-2025modernvideo "1:10" "very short summary... details soon.") % (find-2025modernvideo "1:14" "I will also show how to display") % (find-2025modernvideo "1:16" "better \"inner views\" of Emacs objects...") % (find-2025modernvideo "1:19" "I'm going to Define what is an inner view,") % (find-2025modernvideo "1:22" "of course.") % (find-2025modernvideo "1:24" "The main trick is that we are going") % (find-2025modernvideo "1:26" "to use one of the ways of displaying") % (find-2025modernvideo "1:30" "internal objects, that is the `cl-print'") % (find-2025modernvideo "1:35" "family of functions, for example,") % (find-2025modernvideo "1:38" "`cl-prin1-to-string', and here are some") % (find-2025modernvideo "1:41" "examples of the kind of output that we") % (find-2025modernvideo "1:43" "are going to see...") % (find-2025modernvideo "1:44" "for example, if we run these two lines") % (find-2025modernvideo "1:50" "here the first line defines a function `foo'") % (find-2025modernvideo "1:53" "and the second line sets `o' to the") % (find-2025modernvideo "1:58" "internal view of the definition of `foo'.") % (find-2025modernvideo "2:00" "In older Emacses `o' would be just a") % (find-2025modernvideo "2:05" "list that looks... that would look very") % (find-2025modernvideo "2:08" "similar to this line here... but in newer") % (find-2025modernvideo "2:11" "Emacses the result of this - I mean, the") % (find-2025modernvideo "2:15" "the contents of `o' is this thing herem") % (find-2025modernvideo "2:18" "that looks quite different") % (find-2025modernvideo "2:21" "from this definition.") % (find-2025modernvideo "2:24" "So, in older Emacses") % (find-2025modernvideo "2:27" "the contents of the") % (find-2025modernvideo "2:31" "function cell of `o'...") % (find-2025modernvideo "2:34" "sorry, of the function cell of `foo',") % (find-2025modernvideo "2:36" "would be an \"old-style lambda\",") % (find-2025modernvideo "2:38" "that would be just a list like this...") % (find-2025modernvideo "2:41" "and in newer Emacses uh the contents of O would") % (find-2025modernvideo "2:45" "be a \"vector-like lambda\"... look for the") % (find-2025modernvideo "2:48" "square brackets here - this is a") % (find-2025modernvideo "2:50" "vector, but it is preceded by a hash sign.") % (find-2025modernvideo "2:53" "So this is what we call") % (find-2025modernvideo "2:55" "a \"vector-like lambda\",") % (find-2025modernvideo "2:57" "and vector-like lambas do not") % (find-2025modernvideo "2:59" "have a canonical printed representation -") % (find-2025modernvideo "3:01" "they have at least two semicanonical") % (find-2025modernvideo "3:03" "printed representations...") % (find-2025modernvideo "3:05" "The first semicanonical") % (find-2025modernvideo "3:07" "printed representation is this one, that is") % (find-2025modernvideo "3:10" "generated by a family of functions with") % (find-2025modernvideo "3:13" "names like `prin1'...") % (find-2025modernvideo "3:15" "and the second semicanonical printed") % (find-2025modernvideo "3:19" "representation is like this -") % (find-2025modernvideo "3:23" "it looks like a list...") % (find-2025modernvideo "3:26" "it looks somewhat like this definition") % (find-2025modernvideo "3:29" "of `foo' here, but it has this") % (find-2025modernvideo "3:33" "`:dynbind' symbol here...") % (find-2025modernvideo "3:35" "and it turns out that when we use") % (find-2025modernvideo "3:38" "the `cl-print' family of functions we can") % (find-2025modernvideo "3:41" "reconfigure how things are printed...") % (find-2025modernvideo "3:43" "and I'm going to show several interesting") % (find-2025modernvideo "3:46" "ways of reconfiguring how lambdas are printed,") % (find-2025modernvideo "3:53" "and one of the ways is going to") % (find-2025modernvideo "3:55" "be like this.") % (find-2025modernvideo "3:58" "We can also use the `cl-print'") % (find-2025modernvideo "4:02" "functions with my indentation tricks to") % (find-2025modernvideo "4:05" "to display how types, or classes, are") % (find-2025modernvideo "4:10" "viewed internally by Emacs, and this is a") % (find-2025modernvideo "4:13" "big example...") % (find-2025modernvideo "4:16" "This is what Emacs considers as being") % (find-2025modernvideo "4:20" "the definition of the type") % (find-2025modernvideo "4:22" "`cl-structure-class',") % (find-2025modernvideo "4:24" "class and it is this big thing here.") % (find-2025modernvideo "4:27" "I edited it very lightly...") % (find-2025modernvideo "4:30" "I just uh deleted some line breaks here.") % (find-2025modernvideo "4:36" "And another thing that I want to to") % (find-2025modernvideo "4:39" "explain is that Emacs") % (find-2025modernvideo "4:41" "has some help functions that") % (find-2025modernvideo "4:43" "I have never liked...") % (find-2025modernvideo "4:45" "for most people they are good enough,") % (find-2025modernvideo "4:47" "but for me they aren't... they...") % (find-2025modernvideo "4:50" "uh, well - I'm going to say") % (find-2025modernvideo "4:54" "more about this later...") % (find-2025modernvideo "4:56" "and, for example,") % (find-2025modernvideo "4:58" "if we want a description of what is") % (find-2025modernvideo "5:00" "this type here, that we just saw in") % (find-2025modernvideo "5:04" "its internal view here...") % (find-2025modernvideo "5:06" "we can run either `describe-type'") % (find-2025modernvideo "5:08" "or my variant of `describe-type',") % (find-2025modernvideo "5:10" "and we get a help buffer") % (find-2025modernvideo "5:13" "that looks like this, in which") % (find-2025modernvideo "5:16" "these blue things that are underlined") % (find-2025modernvideo "5:19" "are \"buttons\", in the classical sense...") % (find-2025modernvideo "5:21" "you can click on these buttons, or type") % (find-2025modernvideo "5:23" "RET on these buttons, and you will be") % (find-2025modernvideo "5:25" "taken to another help page, that is") % (find-2025modernvideo "5:28" "generated dynamically...") % (find-2025modernvideo "5:30" "and you can navigate back and forth...") % (find-2025modernvideo "5:34" "and well, whatever...") % (find-2025modernvideo "5:36" "and I'm going to explain my") % (find-2025modernvideo "5:39" "problems with these kinds of help buffers") % (find-2025modernvideo "5:41" "and what I'm trying to do to") % (find-2025modernvideo "5:43" "overcome these problems...") 2. Anyone can learn Lisp in one day % (find-2025modernvideo "5:47" "One of my slogans in this video") % (find-2025modernvideo "5:49" "is going to be this one:") % (find-2025modernvideo "5:49" "\"Anyone can learn Lisp in one day\".") % (find-2025modernvideo "5:51" "this is a part of a bigger quote") % (find-2025modernvideo "5:55" "that I took from a keynote presentation") % (find-2025modernvideo "5:57" "by Abelson and Sussman, who") % (find-2025modernvideo "6:00" "are two dinosaurs of Computer Science...") % (find-2025modernvideo "6:04" "Here is the full quote:") % (find-2025modernvideo "6:06" "\"Anyone can learn Lisp in one day -") % (find-2025modernvideo "6:10" "except that if they already know Fortran") % (find-2025modernvideo "6:12" "then it would take three days.\"") % (find-2025modernvideo "6:17" "This is a frame of the video...") % (find-2025modernvideo "6:30" "By the way I am going to to add") % (find-2025modernvideo "6:34" "this... \"and if the person is starting") % (find-2025modernvideo "6:38" "with Doom Emacs then it would take 5 years.\"") % (find-2025modernvideo "6:40" "why? I'm going to explain why.") % (find-2025modernvideo "6:45" "This is how Emacs used to be.") % (find-2025modernvideo "6:49" "If we execute these two expressions here") % (find-2025modernvideo "6:52" "the first one... sorry, each symbol can") % (find-2025modernvideo "6:57" "have two \"values\",") % (find-2025modernvideo "6:59" "one is its \"value as a variable\"") % (find-2025modernvideo "7:00" "and another one is its \"value as a function\"...") % (find-2025modernvideo "7:04" "and if we run this we store 42") % (find-2025modernvideo "7:08" "in the \"value cell\" of the symbol `foo', and") % (find-2025modernvideo "7:13" "if we run this defun here it stores a") % (find-2025modernvideo "7:17" "certain anonymous function in the") % (find-2025modernvideo "7:20" "\"function cell\" of the symbol `foo'...") % (find-2025modernvideo "7:24" "and in Emacs, until some time ago") % (find-2025modernvideo "7:28" "if we did that and and if we ran") % (find-2025modernvideo "7:33" "this expression here the result") % (find-2025modernvideo "7:36" "would be 42,") % (find-2025modernvideo "7:37" "because of this line here, and if we") % (find-2025modernvideo "7:41" "ran this line here the result would be") % (find-2025modernvideo "7:43" "the anonymous function corresponding to") % (find-2025modernvideo "7:46" "this defun here...") % (find-2025modernvideo "7:47" "but now this has changed...") % (find-2025modernvideo "7:51" "the result of this thing here is this") % (find-2025modernvideo "7:54" "vector-like lambda here - but that doesn't") % (find-2025modernvideo "7:57" "matter much now...") % (find-2025modernvideo "8:00" "So, until some time ago") % (find-2025modernvideo "8:02" "if we did that and if we ran") % (find-2025modernvideo "8:04" "this expression here, (foo foo)...") % (find-2025modernvideo "8:07" "Emacs would do this: it would") % (find-2025modernvideo "8:10" "replace the first `foo' by this") % (find-2025modernvideo "8:12" "anonymous function here, it would replace") % (find-2025modernvideo "8:15" "the second `foo' by the value of `foo' as a") % (find-2025modernvideo "8:17" "variable, that is 42,") % (find-2025modernvideo "8:19" "and it would evaluate this, and the") % (find-2025modernvideo "8:22" "result would be 420.") 4. Lambdas for beginners broken % (find-2025modernvideo "8:26" "So, again, we used to have this slogan") % (find-2025modernvideo "8:29" "here, \"anyone can learn Lisp in one day\"...") % (find-2025modernvideo "8:32" "but now this is gone.") % (find-2025modernvideo "8:34" "Let me show... let me talk") % (find-2025modernvideo "8:36" "a bit more about why...") % (find-2025modernvideo "8:40" "the title of this slide is") % (find-2025modernvideo "8:42" "\"Lambdas for beginners broken\"...") % (find-2025modernvideo "8:44" "if we run this, as I've shown") % (find-2025modernvideo "8:47" "in the previous slide...") % (find-2025modernvideo "8:49" "in the old style, in old Emacses,") % (find-2025modernvideo "8:51" "the result of (symbol-function 'foo)") % (find-2025modernvideo "8:53" "would be this anonymous function here...") % (find-2025modernvideo "8:55" "and now we get this strange thing here.") % (find-2025modernvideo "9:00" "So, this is an \"old-style lambda\",") % (find-2025modernvideo "9:04" "this is a \"vector-like lambda\",") % (find-2025modernvideo "9:08" "and until the middle of 2024") % (find-2025modernvideo "9:11" "beginners could learn a lot of Lisp") % (find-2025modernvideo "9:14" "by thinking only in terms of") % (find-2025modernvideo "9:17" "objects like these...") % (find-2025modernvideo "9:19" "this is a function and this") % (find-2025modernvideo "9:21" "is an anonymous function, and") % (find-2025modernvideo "9:23" "they would learn how to draw cons cell") % (find-2025modernvideo "9:26" "diagrams like this thing here and this") % (find-2025modernvideo "9:29" "thing here...") % (find-2025modernvideo "9:31" "they would think on lists as") % (find-2025modernvideo "9:33" "being these trees here, and they") % (find-2025modernvideo "9:35" "would be able to understand a lot of") % (find-2025modernvideo "9:38" "Lisp just by thinking in these terms...") % (find-2025modernvideo "9:41" "and then vector-like lambdas started") % (find-2025modernvideo "9:45" "to appear in many places... and if we use") % (find-2025modernvideo "9:49" "\"vector-like lambdas\" in a wide sense,") % (find-2025modernvideo "9:52" "to mean all the new objects,") % (find-2025modernvideo "9:56" "these new objects, that are") % (find-2025modernvideo "10:00" "difficult to visualize... they also started") % (find-2025modernvideo "10:02" "to appear in many places.") 5. Lambdas for beginners broken (2) % (find-2025modernvideo "10:04" "This is a continuation of the") % (find-2025modernvideo "10:07" "previous slide - this part here is a copy") % (find-2025modernvideo "10:10" "of things that were in the previous slide...") % (find-2025modernvideo "10:12" "before 2024 beginners could") % (find-2025modernvideo "10:18" "open black boxes like this...") % (find-2025modernvideo "10:23" "they could try to see what was in the") % (find-2025modernvideo "10:26" "function cell of the symbol `foo'...") % (find-2025modernvideo "10:30" "and they would see something elegant and") % (find-2025modernvideo "10:33" "mind-blowing... and they would start to love") % (find-2025modernvideo "10:35" "Lisp immediately.") % (find-2025modernvideo "10:37" "Now what they get - what they see -") % (find-2025modernvideo "10:39" "is a tiny part of a very complex structure") % (find-2025modernvideo "10:41" "that is very powerful but that is") % (find-2025modernvideo "10:45" "very difficult to understand...") % (find-2025modernvideo "10:47" "and now our beginners are overwhelmed") % (find-2025modernvideo "10:50" "instead of mind-blown.") % (find-2025modernvideo "10:52" "Note that I said \"black box\" here.") % (find-2025modernvideo "10:54" "Let me explain the term.") % (find-2025modernvideo "10:58" "We can open what's inside of `foo'...") % (find-2025modernvideo "11:03" "we can open `foo' to see the contents of") % (find-2025modernvideo "11:05" "the symbol `foo', and we can try to see") % (find-2025modernvideo "11:08" "what's in the function cell of the") % (find-2025modernvideo "11:12" "symbol `foo'...") % (find-2025modernvideo "11:14" "so we can open the box, but what we get") % (find-2025modernvideo "11:16" "is something very difficult to understand,") % (find-2025modernvideo "11:19" "and so I'm going to say that") % (find-2025modernvideo "11:23" "when this happens that box is black.") % (find-2025modernvideo "11:27" "It is not totally black - we can open open it -") % (find-2025modernvideo "11:29" "but we don't understand what is going on there,") % (find-2025modernvideo "11:32" "so we declare that that is black.") % (find-2025modernvideo "11:36" "And... when these things started to happen") % (find-2025modernvideo "11:39" "_I_ was overwhelmed -") % (find-2025modernvideo "11:44" "and in this video I'm going to pretend") % (find-2025modernvideo "11:46" "that I was not the only person") % (find-2025modernvideo "11:50" "that was overwhelmed") % (find-2025modernvideo "11:52" "by these new structures") % (find-2025modernvideo "11:56" "that are not so elegant") % (find-2025modernvideo "11:58" "as the ones that we had before.") % (find-2025modernvideo "12:00" "Anyway...") 6. For the impatient: try this % (find-2025modernvideo "12:04" "Anyway, before going ahead") % (find-2025modernvideo "12:07" "I need to explain how technical") % (find-2025modernvideo "12:09" "this video is going to be.") % (find-2025modernvideo "12:10" "I hate videos that present things") % (find-2025modernvideo "12:12" "that look fantastic") % (find-2025modernvideo "12:15" "but that are very hard to install,") % (find-2025modernvideo "12:18" "and I've been experimenting") % (find-2025modernvideo "12:22" "with things that can be installed -") % (find-2025modernvideo "12:25" "usually in /tmp/,") % (find-2025modernvideo "12:27" "so in a very temporary place -") % (find-2025modernvideo "12:29" "in seconds, so they don't even") % (find-2025modernvideo "12:31" "leave garbage in your system...") % (find-2025modernvideo "12:35" "So, in the page of this video") % (find-2025modernvideo "12:39" "there will be something like this...") % (find-2025modernvideo "12:42" "you just need to copy that") % (find-2025modernvideo "12:44" "to a temporary buffer and execute that") % (find-2025modernvideo "12:46" "with a series of f8s, and then the rest") % (find-2025modernvideo "12:49" "will hopefully") % (find-2025modernvideo "12:51" "be somewhat obvious...") % (find-2025modernvideo "12:53" "this part here will download three files") % (find-2025modernvideo "12:57" "into /tmp, and these things these things") % (find-2025modernvideo "13:01" "here will show some tests.") % (find-2025modernvideo "13:04" "Let me execute these tests") % (find-2025modernvideo "13:07" "and explain what they do.") % (find-2025modernvideo "13:09" "I will need a smaller font...") % (find-2025modernvideo "13:13" "if we run this `code-c-d' we just make") % (find-2025modernvideo "13:18" "this prefix here point to /tmp/...") % (find-2025modernvideo "13:20" "we are going to put that in the load-path...") % (find-2025modernvideo "13:24" "and then we're going to to load") % (find-2025modernvideo "13:29" "my new definitions of `cl-print'") % (find-2025modernvideo "13:31" "for some default Lisp objects...") % (find-2025modernvideo "13:33" "and with these new definitions") % (find-2025modernvideo "13:36" "if I run this it shows...") % (find-2025modernvideo "13:39" "well, this is my file") % (find-2025modernvideo "13:45" "2025modern-prints.el...") % (find-2025modernvideo "13:47" "and it has lots of tests,") % (find-2025modernvideo "13:50" "and if we execute this test here") % (find-2025modernvideo "13:55" "we are going to see that when we run") % (find-2025modernvideo "13:57" "this `setq' here") % (find-2025modernvideo "14:01" "it shows the result of the...") % (find-2025modernvideo "14:04" "the contents of the function cell") % (find-2025modernvideo "14:06" "of `adt-2'...") % (find-2025modernvideo "14:09" "and the default representation") % (find-2025modernvideo "14:11" "is this thing here, that is very ugly...") % (find-2025modernvideo "14:13" "but we have other ways of") % (find-2025modernvideo "14:17" "inspecting that...") % (find-2025modernvideo "14:21" "so the first way is the default way,") % (find-2025modernvideo "14:25" "we just ask Emacs to \"describe\"") % (find-2025modernvideo "14:29" "what is the function `adt-2'...") % (find-2025modernvideo "14:31" "and it shows that `adt-2' is an") % (find-2025modernvideo "14:35" "\"interpreted-function\" that has two") % (find-2025modernvideo "14:38" "\"advice\"s, whatever that means...") % (find-2025modernvideo "14:41" "and if I run this thing here to show") % (find-2025modernvideo "14:45" "my redefinition...") % (find-2025modernvideo "14:48" "one of the internal representations of `adt-o'...") % (find-2025modernvideo "14:54" "result is this, that is quite pretty...") % (find-2025modernvideo "14:57" "a nice internal view of an advice object...") % (find-2025modernvideo "15:05" "and if we load this file here,") % (find-2025modernvideo "15:09" "2025-modern-reset.el, it resets the") % (find-2025modernvideo "15:13" "definitions of `cl-print' to the default ones...") % (find-2025modernvideo "15:16" "so if we run this and we ask Emacs") % (find-2025modernvideo "15:20" "to to print the contents of `adt-o'") % (find-2025modernvideo "15:23" "we are going to get this...") % (find-2025modernvideo "15:27" "so it's indented in a weird way,") % (find-2025modernvideo "15:30" "it's not easy to understand, blah") % (find-2025modernvideo "15:32" "blah blah blah...") % (find-2025modernvideo "15:34" "but we can load 2025-modern-prints.el") % (find-2025modernvideo "15:38" "again to use my new definitions again") % (find-2025modernvideo "15:42" "and this thing becomes pretty again...") % (find-2025modernvideo "15:44" "and with these new definitions") % (find-2025modernvideo "15:49" "we can also print, for example,") % (find-2025modernvideo "15:50" "the definition of a class.") % (find-2025modernvideo "15:52" "And this is exactly what I've") % (find-2025modernvideo "15:55" "shown before, except that") % (find-2025modernvideo "16:00" "we need to delete some line braks here") % (find-2025modernvideo "16:03" "to make things slightly easier to read...") % (find-2025modernvideo "16:05" "but whatever - let's go back.") % (find-2025modernvideo "16:11" "And I was also mentioning my problems") % (find-2025modernvideo "16:14" "with the Emacs help pages.") % (find-2025modernvideo "16:16" "This file here, 2025-modern-button.el,") % (find-2025modernvideo "16:19" "loads some functions for exploring these") % (find-2025modernvideo "16:22" "help pages and its buttons,") % (find-2025modernvideo "16:25" "and we have some examples here...") % (find-2025modernvideo "16:26" "oops, sorry...") % (find-2025modernvideo "16:32" "here...") % (find-2025modernvideo "16:34" "Let me show this example here.") % (find-2025modernvideo "16:38" "First I'm going to define a structure") % (find-2025modernvideo "16:41" "called `mybutton' - the name is bad, sorry...") % (find-2025modernvideo "16:44" "and if we ask Emacs to describe") % (find-2025modernvideo "16:47" "this structure in the default way") % (find-2025modernvideo "16:50" "it says that mybutton is a type,") % (find-2025modernvideo "16:53" "that has these fields here, and whatever...") % (find-2025modernvideo "16:57" "and these are the buttons that I don't like...") % (find-2025modernvideo "16:59" "and if I execute this thing here -") % (find-2025modernvideo "17:04" "that is a \"piano roll macro\", that I") % (find-2025modernvideo "17:06" "explained in a previous video...") % (find-2025modernvideo "17:09" "this thing here is going to simulate that") % (find-2025modernvideo "17:11" "the user is typing all these keys here...") % (find-2025modernvideo "17:15" "please pay attention to what happens here...") % (find-2025modernvideo "17:17" "we are going to switch to this window,") % (find-2025modernvideo "17:20" "and then we're going to to type a series") % (find-2025modernvideo "17:22" "of tabs to navigate between the buttons...") % (find-2025modernvideo "17:25" "we're going to stop at this button here,") % (find-2025modernvideo "17:27" "we're going to do something,") % (find-2025modernvideo "17:29" "and this something will appear here,") % (find-2025modernvideo "17:32" "in the minibuffer. So, take a look...") % (find-2025modernvideo "17:38" "here... then here.") % (find-2025modernvideo "17:42" "and now we defined a variable") % (find-2025modernvideo "17:46" "called `ee-button' and it points to this") % (find-2025modernvideo "17:51" "position in this buffer...") % (find-2025modernvideo "17:53" "and this file here -") % (find-2025modernvideo "17:55" "2025-modern-button.el - has several tools") % (find-2025modernvideo "17:57" "for exploring these buttons, and the best way") % (find-2025modernvideo "17:59" "of exploring these buttons is to use this") % (find-2025modernvideo "18:01" "other function here, `find-ebutton-links',") % (find-2025modernvideo "18:04" "that also sets this variable, but that shows") % (find-2025modernvideo "18:07" "some functions for exploring these buttons.") % (find-2025modernvideo "18:11" "Let me show... it will do") % (find-2025modernvideo "18:13" "something very similar - it will navigate") % (find-2025modernvideo "18:15" "to this button here and then it will") % (find-2025modernvideo "18:18" "execute `M-x find-ebutton-links'...") % (find-2025modernvideo "18:22" "look...") % (find-2025modernvideo "18:30" "it creates this temporary buffer here,") % (find-2025modernvideo "18:33" "and these functions that start with") % (find-2025modernvideo "18:35" "`find-3a-button'... they divide the window...") % (find-2025modernvideo "18:40" "they divide the Emacs frame in three windows...") % (find-2025modernvideo "18:42" "they show the \"*Help*\" buffer here...") % (find-2025modernvideo "18:46" "remember that the cursor is here,") % (find-2025modernvideo "18:49" "on the button that we are trying") % (find-2025modernvideo "18:52" "to understand...") % (find-2025modernvideo "18:55" "and they show some other output in the") % (find-2025modernvideo "18:57" "third window here.") % (find-2025modernvideo "18:59" "This first call here, with (ee-button-helpcall),") % (find-2025modernvideo "19:01" "shows what this button \"calls\"...") % (find-2025modernvideo "19:05" "for technical reason the prefix for that") % (find-2025modernvideo "19:08" "is \"help\"...") % (find-2025modernvideo "19:12" "the \"helpcall\" associated to this") % (find-2025modernvideo "19:17" "button is this one... if we format it in a") % (find-2025modernvideo "19:20" "slightly different way it is this...") % (find-2025modernvideo "19:25" "and if we pretty-print the contents of a") % (find-2025modernvideo "19:28" "certain big structure and display it") % (find-2025modernvideo "19:31" "in this window we see that the text") % (find-2025modernvideo "19:34" "properties at this position are all") % (find-2025modernvideo "19:37" "these ones here... they are sorted in") % (find-2025modernvideo "19:39" "alphabetical order...") % (find-2025modernvideo "19:40" "and then... sorry...") % (find-2025modernvideo "19:47" "we can delete the ones that are") % (find-2025modernvideo "19:51" "not very interesting, and we get this...") % (find-2025modernvideo "19:54" "so, this gives us a lot of information about") % (find-2025modernvideo "19:57" "this button here, but it deletes some") % (find-2025modernvideo "20:01" "things that are not very interesting...") % (find-2025modernvideo "20:03" "and here we can see how we can extract the") % (find-2025modernvideo "20:06" "\"helpcall\" from this button here.") % (find-2025modernvideo "20:09" "The \"helpcall\" is this thing here -") % (find-2025modernvideo "20:13" "it calls `describe-function' with the") % (find-2025modernvideo "20:15" "argument `cl-print-object'...") % (find-2025modernvideo "20:17" "and we can see here that the `help-function'") % (find-2025modernvideo "20:21" "associated to this button here") % (find-2025modernvideo "20:24" "is `describe-function', and the `help-args'") % (find-2025modernvideo "20:26" "are this list here: (cl-print-object).") % (find-2025modernvideo "20:30" "And other things are not... are very") % (find-2025modernvideo "20:34" "hard to explain, so I'm not going to") % (find-2025modernvideo "20:36" "explain them now.") ]==] unrevised_bigstr = [==[ (find-2025modernvideo "00:00" " ") ]==] -- Local Variables: -- coding: utf-8-unix -- End: