Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
-- This file: -- http://anggtwu.net/SUBTITLES/2022-yttranscript.lua.html -- http://anggtwu.net/SUBTITLES/2022-yttranscript.lua -- (find-angg "SUBTITLES/2022-yttranscript.lua") -- Author: Eduardo Ochs <eduardoochs@gmail.com> -- -- (defun l () (interactive) (find-angg "SUBTITLES/2022-yttranscript.lua")) -- (defun b () (interactive) (find-TH "2022-yttranscript")) -- (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-editeevsubtitles-links-1 "2022yttranscript") -- (find-efunction 'find-editeevsubtitles-links-1) -- Yttr: (find-yttranscript-links "2022yttranscript" "SW3Tx-lHX3o") -- Info: (find-1stclassvideo-links "2022yttranscript") -- Play: (find-2022yttranscriptvideo "0:00") -- -- «.subtitles» (to "subtitles") -- -- 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 "2022-yttranscript.lua" sts = Subtitles.fromsexps(subs_bigstr):addtime("28:28") -- sts.lang = "pt-BR" = sts outfname = "$S/http/anggtwu.net/eev-videos/2022-yttranscript.vtt" outfname = "/tmp/2022-yttranscript.vtt" out = sts:vtt().."\n\n" ee_writefile(outfname, out) -- (find-fline "/tmp/2022-yttranscript.vtt") ** Test the .vtt ** (find-2022yttranscriptvideo "0:00") ** Select /tmp/ or ee-eevvideosdir ** (find-eevvideosfile "") ** (find-eevvideosfile "" "2022-yttranscript.mp4") ** (find-eevvideossh0 "cp -v 2022-yttranscript.mp4 /tmp/") ** (code-video "2022yttranscriptvideo" "/tmp/2022-yttranscript.mp4") ** (code-video "2022yttranscriptvideo" "$S/http/anggtwu.net/eev-videos/2022-yttranscript.mp4") ** (find-2022yttranscriptvideo "0:00") ** Upload the 2022-yttranscript.vtt ** to http://anggtwu.net/eev-videos/ * (eepitch-shell) * (eepitch-kill) * (eepitch-shell) cd /tmp/ scp 2022-yttranscript.vtt $LINP/eev-videos/ scp 2022-yttranscript.vtt $LINS/eev-videos/ Scp-np 2022-yttranscript.vtt $TWUP/eev-videos/ Scp-np 2022-yttranscript.vtt $TWUS/eev-videos/ ** Upload the subtitles to youtube ** http://www.youtube.com/watch?v=SW3Tx-lHX3o ** Check that the "psne subtitles" thing works ** (find-1stclassvideo-links "2022yttranscript") --]] -- «subtitles» (to ".subtitles") subs_bigstr = [==[ (find-2022yttranscriptvideo "00:01" "Hi! My name is Eduardo Ochs,") (find-2022yttranscriptvideo "00:03" "I'm the author of an Emacs package called eev,") (find-2022yttranscriptvideo "00:06" "and this video is about a function that I added") (find-2022yttranscriptvideo "00:09" "to eev in March... it's called") (find-2022yttranscriptvideo "00:11" "`find-yttranscript-links'...") (find-2022yttranscriptvideo "00:16" "and... well, this page is about this video") (find-2022yttranscriptvideo "00:18" "and that function, with all the details...") (find-2022yttranscriptvideo "00:22" "and that function is inspired by a blog post") (find-2022yttranscriptvideo "00:25" "that Andrea Giugliano wrote in...") (find-2022yttranscriptvideo "00:28" "actually, two blog posts -") (find-2022yttranscriptvideo "00:31" "in the end of March...") (find-2022yttranscriptvideo "00:33" "the first blog post was called") (find-2022yttranscriptvideo "00:35" "\"An Elisp snippet to download") (find-2022yttranscriptvideo "00:37" "YouTube video transcripts\"...") (find-2022yttranscriptvideo "00:40" "and the second one was about rewriting") (find-2022yttranscriptvideo "00:42" "his function of the first blog post") (find-2022yttranscriptvideo "00:45" "in a slightly different style.") (find-2022yttranscriptvideo "00:51" "When I read those blog posts") (find-2022yttranscriptvideo "00:53" "I immediately thought that WOW,") (find-2022yttranscriptvideo "00:56" "I _need_ something like that in eev,") (find-2022yttranscriptvideo "00:58" "but I would like to rewrite it") (find-2022yttranscriptvideo "01:01" "in the style that I prefer to put the") (find-2022yttranscriptvideo "01:04" "things in eev in...") (find-2022yttranscriptvideo "01:06" "and that's the reason for the dog") (find-2022yttranscriptvideo "01:10" "with the square haircut here -") (find-2022yttranscriptvideo "01:13" "I'm going to call him the \"square dog\"...") (find-2022yttranscriptvideo "01:17" "when people say \"dog\" no one expects") (find-2022yttranscriptvideo "01:24" "a square dog, so this is not the dog") (find-2022yttranscriptvideo "01:28" "that people would expect by default...") (find-2022yttranscriptvideo "01:31" "and the interface that this function uses") (find-2022yttranscriptvideo "01:35" "is as unexpected as a square dog.") (find-2022yttranscriptvideo "01:41" "So let me show how this thing works.") (find-2022yttranscriptvideo "01:46" "I prepared two examples here.") (find-2022yttranscriptvideo "01:49" "The first example uses a video that I") (find-2022yttranscriptvideo "01:53" "have not downloaded with youtube-dl yet,") (find-2022yttranscriptvideo "01:56" "and the second example uses a video that") (find-2022yttranscriptvideo "01:59" "I have downloaded.") (find-2022yttranscriptvideo "02:00" "A few months ago I wanted to convince") (find-2022yttranscriptvideo "02:05" "a friend to read this manga here,") (find-2022yttranscriptvideo "02:08" "\"Lone Wolf and Cub\"...") (find-2022yttranscriptvideo "02:11" "and I found this video about Lone Wolf") (find-2022yttranscriptvideo "02:13" "and Cub, aind I wanted to to send him a") (find-2022yttranscriptvideo "02:17" "link to a specific part of the video...") (find-2022yttranscriptvideo "02:20" "so I watched first the whole video, and") (find-2022yttranscriptvideo "02:23" "then I wanted to find a specific part,") (find-2022yttranscriptvideo "02:25" "and I only remembered a few keywords of") (find-2022yttranscriptvideo "02:28" "it... so, what did I do?") (find-2022yttranscriptvideo "02:32" "First of all... uh, no, one second.") (find-2022yttranscriptvideo "02:34" "This thing here, this sequence of 11") (find-2022yttranscriptvideo "02:37" "characters, is what I call the \"hash\"") (find-2022yttranscriptvideo "02:39" "of the video, and YouTube videos") (find-2022yttranscriptvideo "02:42" "are identified by their hashes.") (find-2022yttranscriptvideo "02:45" "When I run `M-x find-youtubedl-links' -") (find-2022yttranscriptvideo "02:50" "this is my standard function for") (find-2022yttranscriptvideo "02:52" "downloading videos from YouTube and for") (find-2022yttranscriptvideo "02:54" "doing things related to downloaded") (find-2022yttranscriptvideo "02:58" "videos...") (find-2022yttranscriptvideo "03:00" "and when I run that function it detects") (find-2022yttranscriptvideo "03:02" "the hash around point and it") (find-2022yttranscriptvideo "03:06" "does some things with that hash...") (find-2022yttranscriptvideo "03:08" "in this case the hash is going to be") (find-2022yttranscriptvideo "03:10" "this one, \"aZWq6CEzhuQ\"...") (find-2022yttranscriptvideo "03:13" "and `find-youtubedl-links' is going to") (find-2022yttranscriptvideo "03:16" "generate a temporary buffer") (find-2022yttranscriptvideo "03:19" "in which several parts of it") (find-2022yttranscriptvideo "03:21" "were replaced by that hash.") (find-2022yttranscriptvideo "03:24" "so this thing here is the hash,") (find-2022yttranscriptvideo "03:30" "and these other... stubs") (find-2022yttranscriptvideo "03:35" "have not been replaced yet...") (find-2022yttranscriptvideo "03:38" "and one thing that I'm going to do is") (find-2022yttranscriptvideo "03:39" "that I'm going to replace the stem") (find-2022yttranscriptvideo "03:42" "by \"lonewolf\".") (find-2022yttranscriptvideo "03:45" "Let me duplicate this line and in this") (find-2022yttranscriptvideo "03:49" "copy I'm going to replace the \"{stem}\"") (find-2022yttranscriptvideo "03:52" "by \"lonewolf\".") (find-2022yttranscriptvideo "03:54" "if I execute this sexp here it will") (find-2022yttranscriptvideo "03:58" "regenerate this buffer with these values") (find-2022yttranscriptvideo "04:01" "for some variables of the template, and") (find-2022yttranscriptvideo "04:04" "the \"{stem}\" that appears here, here,") (find-2022yttranscriptvideo "04:08" "here, and in lots of other places is") (find-2022yttranscriptvideo "04:09" "going to be replaced by \"lonewolf\".") (find-2022yttranscriptvideo "04:12" "Let me do that now...") (find-2022yttranscriptvideo "04:14" "Here - the buffer was slightly changed...") (find-2022yttranscriptvideo "04:17" "here we see \"lonewolf\" in several") (find-2022yttranscriptvideo "04:20" "places... and let me delete the parts that") (find-2022yttranscriptvideo "04:24" "I'm not going to use. I'm not interested") (find-2022yttranscriptvideo "04:26" "in this part here...") (find-2022yttranscriptvideo "04:28" "by the way, this sexp here goes to a tutorial") (find-2022yttranscriptvideo "04:31" "that explains how to use youtube-dl...") (find-2022yttranscriptvideo "04:34" "sorry, how to use youtube-dl from eev.") (find-2022yttranscriptvideo "04:39" "If we follow this we go") (find-2022yttranscriptvideo "04:41" "to this tutorial here, to this section,") (find-2022yttranscriptvideo "04:43" "that starts by explaining what is the hash") (find-2022yttranscriptvideo "04:46" "of the video, and so on... but let me go back.") (find-2022yttranscriptvideo "04:49" "I also do not want this section here,") (find-2022yttranscriptvideo "04:52" "I said that I do not want to download this") (find-2022yttranscriptvideo "04:55" "video, so I also do not want these things") (find-2022yttranscriptvideo "04:58" "here... remember that this is a") (find-2022yttranscriptvideo "05:00" "temporary buffer, so I can do any mess") (find-2022yttranscriptvideo "05:02" "that I want with it...") (find-2022yttranscriptvideo "05:07" "this section is about playing the local") (find-2022yttranscriptvideo "05:08" "copy - I do not have a local copy...") (find-2022yttranscriptvideo "05:13" "I'm interested in these parts here.") (find-2022yttranscriptvideo "05:19" "If I execute this then Emacs") (find-2022yttranscriptvideo "05:22" "is going to call Google Chrome") (find-2022yttranscriptvideo "05:27" "with a certain URL to play the video") (find-2022yttranscriptvideo "05:30" "starting from a certain position. For") (find-2022yttranscriptvideo "05:32" "example, if I replace this by 2:34, if") (find-2022yttranscriptvideo "05:36" "executed this it will play the video") (find-2022yttranscriptvideo "05:39" "with this hash starting from this") (find-2022yttranscriptvideo "05:41" "position...") (find-2022yttranscriptvideo "05:42" "and if I execute this sexp here") (find-2022yttranscriptvideo "05:48" "it will define a function with this \"code\"") (find-2022yttranscriptvideo "05:51" "in its name, so it's \"lonewolf\"...") (find-2022yttranscriptvideo "05:55" "the code is here... and this function") (find-2022yttranscriptvideo "05:58" "here, `file-lonewolfvideo', it will play") (find-2022yttranscriptvideo "06:02" "that video from a certain point...") (find-2022yttranscriptvideo "06:05" "and it was defined as a function") (find-2022yttranscriptvideo "06:09" "that plays that video by opening a") (find-2022yttranscriptvideo "06:12" "browser on a certain URL that plays") (find-2022yttranscriptvideo "06:15" "the video from a certain position.") (find-2022yttranscriptvideo "06:19" "So, for example, if I put 2:34 here") (find-2022yttranscriptvideo "06:22" "it will play the video starting from") (find-2022yttranscriptvideo "06:25" "2:34... but I do not want to play the") (find-2022yttranscriptvideo "06:28" "video now.") (find-2022yttranscriptvideo "06:34" "I want to run this. If I run this sexp") (find-2022yttranscriptvideo "06:37" "here it will open another temporary buffer") (find-2022yttranscriptvideo "06:39" "with another name, so it will not delete") (find-2022yttranscriptvideo "06:42" "this temporary buffer... note that this") (find-2022yttranscriptvideo "06:44" "temporary buffer is called") (find-2022yttranscriptvideo "06:46" "\"*find-youtubedl-links*\"...") (find-2022yttranscriptvideo "06:48" "let me execute this... it opens another") (find-2022yttranscriptvideo "06:52" "temporary buffer, called") (find-2022yttranscriptvideo "06:55" "\"*find-yttranscript-links*\"") (find-2022yttranscriptvideo "07:03" "let me run this with a smaller font...") (find-2022yttranscriptvideo "07:09" "remember that when I use eepitch the") (find-2022yttranscriptvideo "07:13" "main key is f8, and f8 acts in one way") (find-2022yttranscriptvideo "07:17" "on lines that start with a red star,") (find-2022yttranscriptvideo "07:19" "like these four lines here, and in") (find-2022yttranscriptvideo "07:23" "another way on lines that do not start") (find-2022yttranscriptvideo "07:26" "with red stars...") (find-2022yttranscriptvideo "07:28" "and I usually use lines with red stars") (find-2022yttranscriptvideo "07:31" "to set up a target buffer, but I can also") (find-2022yttranscriptvideo "07:34" "use them to do other kinds of setups.") (find-2022yttranscriptvideo "07:37" "These three lines here will") (find-2022yttranscriptvideo "07:40" "prepare a target buffer that is running") (find-2022yttranscriptvideo "07:43" "python, but in this case I will usually") (find-2022yttranscriptvideo "07:47" "execute these four lines here,") (find-2022yttranscriptvideo "07:49" "starting from this one...") (find-2022yttranscriptvideo "07:51" "and the action of this first one -") (find-2022yttranscriptvideo "07:54" "remember that when we execute") (find-2022yttranscriptvideo "07:57" "lines that start with red stars with f8") (find-2022yttranscriptvideo "08:01" "the rest of the line after the red star") (find-2022yttranscriptvideo "08:05" "is executed as Lisp...") (find-2022yttranscriptvideo "08:07" "So... if I start by typing an f8 here") (find-2022yttranscriptvideo "08:11" "the action of this first line is to put") (find-2022yttranscriptvideo "08:15" "this buffer here, that is in fundamental") (find-2022yttranscriptvideo "08:17" "mode, in Python mode...") (find-2022yttranscriptvideo "08:21" "so now the colors are more expressive.") (find-2022yttranscriptvideo "08:24" "And now I'm going to run this these") (find-2022yttranscriptvideo "08:27" "three lines again, they will kill this") (find-2022yttranscriptvideo "08:29" "target buffer and will regenerate it") (find-2022yttranscriptvideo "08:31" "again...") (find-2022yttranscriptvideo "08:33" "and now I'm going to use f8 again to") (find-2022yttranscriptvideo "08:36" "send these lines to the target buffer.") (find-2022yttranscriptvideo "08:38" "Remember that when I type an f8 on a") (find-2022yttranscriptvideo "08:40" "line that do not start with a red star") (find-2022yttranscriptvideo "08:42" "the f8 sends the line to the target") (find-2022yttranscriptvideo "08:46" "buffer...") (find-2022yttranscriptvideo "08:48" "usually the target buffer is running") (find-2022yttranscriptvideo "08:50" "an interactive program, and the program") (find-2022yttranscriptvideo "08:56" "thinks that the user had typed the") (find-2022yttranscriptvideo "08:59" "contents of that line.") (find-2022yttranscriptvideo "09:01" "So I'm going to send these commands here") (find-2022yttranscriptvideo "09:04" "to this Python interpreter here,") (find-2022yttranscriptvideo "09:06" "starting by this one.") (find-2022yttranscriptvideo "09:09" "This one here, that calls this") (find-2022yttranscriptvideo "09:13" "function with a very long name here,") (find-2022yttranscriptvideo "09:15" "takes a few seconds to run, so I'm going") (find-2022yttranscriptvideo "09:18" "to type f8 here and wait until it's") (find-2022yttranscriptvideo "09:22" "done... it was quick.") (find-2022yttranscriptvideo "09:25" "And now I'm going to run these things") (find-2022yttranscriptvideo "09:27" "here, and this print here.") (find-2022yttranscriptvideo "09:36" "And this print here prints the") (find-2022yttranscriptvideo "09:38" "transcript of the video in a certain") (find-2022yttranscriptvideo "09:40" "format. Sometimes I want other formats so") (find-2022yttranscriptvideo "09:44" "it's easy to switch to another format...") (find-2022yttranscriptvideo "09:47" "in this case when I ran these three lines here") (find-2022yttranscriptvideo "09:52" "I defined two variables, trits0 and trits1,") (find-2022yttranscriptvideo "09:58" "for a transcript... and the second definition") (find-2022yttranscriptvideo "10:06" "for trits1 over... oh god, how do I say") (find-2022yttranscriptvideo "10:11" "that in English? Has overridden") (find-2022yttranscriptvideo "10:14" "the previous one... so I executed this,") (find-2022yttranscriptvideo "10:18" "and then this, and the current definition") (find-2022yttranscriptvideo "10:23" "of trits1 is the one that corresponds to") (find-2022yttranscriptvideo "10:28" "this expression here,") (find-2022yttranscriptvideo "10:30" "that gives me this format...") (find-2022yttranscriptvideo "10:33" "if I execute this line here I'm going") (find-2022yttranscriptvideo "10:37" "to get another format... another") (find-2022yttranscriptvideo "10:39" "definition for trits1 and another") (find-2022yttranscriptvideo "10:41" "format. Let me do that now, and let me") (find-2022yttranscriptvideo "10:44" "print the current value of trits1...") (find-2022yttranscriptvideo "10:48" "it is in this much shorter format.") (find-2022yttranscriptvideo "10:53" "I do not want to explain how to use this") (find-2022yttranscriptvideo "10:56" "this shorter format now... the other") (find-2022yttranscriptvideo "10:58" "format is easier to understand.") (find-2022yttranscriptvideo "11:01" "So let me use the previous format again...") (find-2022yttranscriptvideo "11:05" "and now I have a sequence of sexps, and") (find-2022yttranscriptvideo "11:09" "each one of these sexps is a link that...") (find-2022yttranscriptvideo "11:12" "I mean, when I execute it it is going to") (find-2022yttranscriptvideo "11:17" "act as a hyperlink that does something,") (find-2022yttranscriptvideo "11:19" "and this something is to") (find-2022yttranscriptvideo "11:22" "invoke Google Chrome to play") (find-2022yttranscriptvideo "11:25" "this video here") (find-2022yttranscriptvideo "11:27" "starting from a certain position.") (find-2022yttranscriptvideo "11:30" "And when I wanted to send a part") (find-2022yttranscriptvideo "11:34" "of this video to my friend") (find-2022yttranscriptvideo "11:39" "I wanted to show him the part that") (find-2022yttranscriptvideo "11:41" "mentioned Akira Kurosawa...") (find-2022yttranscriptvideo "11:44" "so let me search for Kurosawa here...") (find-2022yttranscriptvideo "11:47" "found it! Let me see...") (find-2022yttranscriptvideo "11:51" "I want to start a few seconds before") (find-2022yttranscriptvideo "11:53" "that, let me see where... ah, here:") (find-2022yttranscriptvideo "11:59" "\"...but Lone Wolf and cub is above all") (find-2022yttranscriptvideo "12:02" "cinematic, blah blah blah blah... it") (find-2022yttranscriptvideo "12:04" "uses the vocabulary of movies...\"") (find-2022yttranscriptvideo "12:07" "I want to start from this position, so") (find-2022yttranscriptvideo "12:10" "let me check if this is what") (find-2022yttranscriptvideo "12:12" "I'm looking for... let me execute this.") (find-2022yttranscriptvideo "12:16" "It will open another tab in the browser...") (find-2022yttranscriptvideo "12:20" "it takes a few seconds...") (find-2022yttranscriptvideo "12:22" "no, sorry, many seconds...") (find-2022yttranscriptvideo "12:27" "and it plays an ad...") (find-2022yttranscriptvideo "12:34" "that's the part that I'm interested in.") (find-2022yttranscriptvideo "12:36" "I'm not interested in the ads.") (find-2022yttranscriptvideo "12:39" "Let me close the YouTube window.") (find-2022yttranscriptvideo "12:43" "Anyway, so this is the part that I want,") (find-2022yttranscriptvideo "12:50" "and I can copy that to my buffer with") (find-2022yttranscriptvideo "12:55" "the annotations about this video...") (find-2022yttranscriptvideo "13:03" "and let me delete this and go back to") (find-2022yttranscriptvideo "13:11" "this thing here, where I saved some") (find-2022yttranscriptvideo "13:14" "hyperlinks... so I was saving these") (find-2022yttranscriptvideo "13:17" "hyperlinks here, and of course") (find-2022yttranscriptvideo "13:20" "I'm not going to use all of them,") (find-2022yttranscriptvideo "13:24" "but the ones that can be useful, that") (find-2022yttranscriptvideo "13:28" "deserve to be saved if I want to replay") (find-2022yttranscriptvideo "13:30" "this action at some point, are") (find-2022yttranscriptvideo "13:37" "these ones. So, these ones create") (find-2022yttranscriptvideo "13:40" "a kind of setup in which this function") (find-2022yttranscriptvideo "13:43" "is defined, and now that this function") (find-2022yttranscriptvideo "13:45" "is defined I can use this sexp here to") (find-2022yttranscriptvideo "13:50" "play the video from a certain position.") (find-2022yttranscriptvideo "13:53" "But let me go back. I said a long time") (find-2022yttranscriptvideo "13:58" "ago that I was going to show two") (find-2022yttranscriptvideo "14:00" "examples. In the first one I was going to") (find-2022yttranscriptvideo "14:02" "use a video that I do not have a local") (find-2022yttranscriptvideo "14:05" "copy of, that is the first one... and the") (find-2022yttranscriptvideo "14:07" "second one is an example in which I use") (find-2022yttranscriptvideo "14:10" "a video that I have downloaded the local") (find-2022yttranscriptvideo "14:13" "copy: this one.") (find-2022yttranscriptvideo "14:16" "Remember that I can either type") (find-2022yttranscriptvideo "14:19" "`find-youtubedl-links' here...") (find-2022yttranscriptvideo "14:27" "but I can also type") (find-2022yttranscriptvideo "14:29" "`find-yttranscript-links' here...") (find-2022yttranscriptvideo "14:31" "it also detects the hash around point.") (find-2022yttranscriptvideo "14:40" "Let me see... no, I want the other") (find-2022yttranscriptvideo "14:42" "one, here... and I want to define") (find-2022yttranscriptvideo "14:53" "short names for the hyperlinks to this") (find-2022yttranscriptvideo "14:55" "video. I'm going to use this stem here,") (find-2022yttranscriptvideo "14:58" "\"haskelltocore\".") (find-2022yttranscriptvideo "15:01" "Let me use a smaller font...") (find-2022yttranscriptvideo "15:07" "this title here was derived from...") (find-2022yttranscriptvideo "15:11" "I mean, Emacs looked at my directory") (find-2022yttranscriptvideo "15:15" "with local copies of videos that I") (find-2022yttranscriptvideo "15:16" "have downloaded using") (find-2022yttranscriptvideo "15:19" " `find-youtubedl-links', and it found") (find-2022yttranscriptvideo "15:22" "that I have a video with this hash here,") (find-2022yttranscriptvideo "15:23" "with this title here, and with this") (find-2022yttranscriptvideo "15:27" "extension. So this is the title,") (find-2022yttranscriptvideo "15:31" "this is the hash, this is the") (find-2022yttranscriptvideo "15:35" "extension, and so on. And I have just") (find-2022yttranscriptvideo "15:39" "adjusted this by hand, and I'm going") (find-2022yttranscriptvideo "15:43" "to run this sexp here to regenerate") (find-2022yttranscriptvideo "15:45" "this buffer, so these \"{stem}\"s") (find-2022yttranscriptvideo "15:48" "here are going to be replaced by") (find-2022yttranscriptvideo "15:49" "\"haskelltocore\".") (find-2022yttranscriptvideo "15:53" "Again, I'm going to delete the things") (find-2022yttranscriptvideo "15:55" "that I do not want to use...") (find-2022yttranscriptvideo "15:58" "I have already downloaded the video, so I") (find-2022yttranscriptvideo "16:01" "do not need this, and I'm going to") (find-2022yttranscriptvideo "16:05" "delete this part that plas the video") (find-2022yttranscriptvideo "16:07" "on YouTube because I just want the") (find-2022yttranscriptvideo "16:09" "local copy.") (find-2022yttranscriptvideo "16:12" "And now let me copy this to my notes.") (find-2022yttranscriptvideo "16:24" "I want to execute this sexp here,") (find-2022yttranscriptvideo "16:27" "and this sexp here is going to define") (find-2022yttranscriptvideo "16:30" "the function `find-haskelltocorevideo',") (find-2022yttranscriptvideo "16:37" "this function here...") (find-2022yttranscriptvideo "16:39" "and it's going to define") (find-2022yttranscriptvideo "16:41" "that function in a way that is very") (find-2022yttranscriptvideo "16:43" "different from the way that I defined") (find-2022yttranscriptvideo "16:45" "this function here. When I ran") (find-2022yttranscriptvideo "16:48" "`code-youtubevideo' with these arguments") (find-2022yttranscriptvideo "16:51" "here it defined `find-lonewolfvideo'") (find-2022yttranscriptvideo "16:54" "as a function that plays a video on") (find-2022yttranscriptvideo "16:56" "YouTube by telling a browser to open") (find-2022yttranscriptvideo "17:00" "a certain URL,") (find-2022yttranscriptvideo "17:03" "and now what I'm going to do is that I'm") (find-2022yttranscriptvideo "17:07" "going to define the function... I mean,") (find-2022yttranscriptvideo "17:10" "this very long sexp here defines this") (find-2022yttranscriptvideo "17:12" "function here as a function that plays") (find-2022yttranscriptvideo "17:15" "a local copy of a video - a local video.") (find-2022yttranscriptvideo "17:20" "The function that plays local copies does") (find-2022yttranscriptvideo "17:22" "not know if the local copy") (find-2022yttranscriptvideo "17:24" "was downloaded from YouTube") (find-2022yttranscriptvideo "17:27" "or if it is something else.") (find-2022yttranscriptvideo "17:32" "So, this sexp here plays the local") (find-2022yttranscriptvideo "17:36" "copy of the video -") (find-2022yttranscriptvideo "17:41" "it's a very good talk about Haskell -") (find-2022yttranscriptvideo "17:44" "and suppose that I want to find") (find-2022yttranscriptvideo "17:46" "something that I remember") (find-2022yttranscriptvideo "17:48" "that I saw in the video") (find-2022yttranscriptvideo "17:50" "when I watched it, and I remember a few") (find-2022yttranscriptvideo "17:53" "keywords about it.") (find-2022yttranscriptvideo "17:55" "So, I can use this to access the") (find-2022yttranscriptvideo "17:57" "transcript...") (find-2022yttranscriptvideo "18:02" "note that") (find-2022yttranscriptvideo "18:05" "this sexp here was invoked with") (find-2022yttranscriptvideo "18:09" "the hash of the video,") (find-2022yttranscriptvideo "18:11" "and with this short name here, that can") (find-2022yttranscriptvideo "18:14" "be used to generate the name of this") (find-2022yttranscriptvideo "18:17" "function here...") (find-2022yttranscriptvideo "18:20" "If I run this I get this") (find-2022yttranscriptvideo "18:24" "temporary buffer, and I want to execute") (find-2022yttranscriptvideo "18:27" "this block here - let me do that now...") (find-2022yttranscriptvideo "18:35" "this line here takes several seconds") (find-2022yttranscriptvideo "18:38" "to run, so I'm going to press f8 once and") (find-2022yttranscriptvideo "18:42" "then wait for the next prompt here...") (find-2022yttranscriptvideo "18:48" "got it. And now I'm going to generate") (find-2022yttranscriptvideo "18:54" "these variables here, and I'm going to") (find-2022yttranscriptvideo "18:56" "print the contents of the variable") (find-2022yttranscriptvideo "18:57" "trits1... it is this thing here...") (find-2022yttranscriptvideo "19:04" "let me choose a keyword...") (find-2022yttranscriptvideo "19:08" "let me search for \"monad\", for example -") (find-2022yttranscriptvideo "19:13" "just a random keyword... I don't remember") (find-2022yttranscriptvideo "19:16" "what is the part that I was") (find-2022yttranscriptvideo "19:18" "looking for, sorry...") (find-2022yttranscriptvideo "19:24" "let's see what happens when I run") (find-2022yttranscriptvideo "19:26" "this thing here...") (find-2022yttranscriptvideo "19:31" "it plays a local copy.") (find-2022yttranscriptvideo "19:39" "So, yeah, that's it. So: I can use that") (find-2022yttranscriptvideo "19:43" "to find things in videos...") (find-2022yttranscriptvideo "19:47" "if I want to download the") (find-2022yttranscriptvideo "19:51" "transcript of a video I need something") (find-2022yttranscriptvideo "19:53" "that is a bit tricky...") (find-2022yttranscriptvideo "19:56" "if I just run this sexp here,") (find-2022yttranscriptvideo "20:01" "this sexp with `find-youtubedl-links',") (find-2022yttranscriptvideo "20:10" "this block here, that has the commands") (find-2022yttranscriptvideo "20:12" "for downloading the video...") (find-2022yttranscriptvideo "20:16" "in this block youtube-dl is called with") (find-2022yttranscriptvideo "20:18" "several different command line options...") (find-2022yttranscriptvideo "20:23" "I sometimes choose one that downloads the") (find-2022yttranscriptvideo "20:26" "video with low resolution, and") (find-2022yttranscriptvideo "20:28" "sometimes I run this one to download the") (find-2022yttranscriptvideo "20:33" "the best possible version...") (find-2022yttranscriptvideo "20:35" "and note that I here I have an option") (find-2022yttranscriptvideo "20:39" "that says that I want youtube-dl to") (find-2022yttranscriptvideo "20:43" "download the subtitles of the video, and") (find-2022yttranscriptvideo "20:46" "for YouTube subtitles and transcripts") (find-2022yttranscriptvideo "20:49" "are different things... subtitles are") (find-2022yttranscriptvideo "20:52" "edited by hand, and transcripts are") (find-2022yttranscriptvideo "20:55" "generated automatically from the") (find-2022yttranscriptvideo "20:59" "program that does speech recognition...") (find-2022yttranscriptvideo "21:04" "and to download the transcript I need") (find-2022yttranscriptvideo "21:08" "other options... they are not here...") (find-2022yttranscriptvideo "21:12" "I need another trick, so I need to") (find-2022yttranscriptvideo "21:14" "change them by hand...") (find-2022yttranscriptvideo "21:16" "so when I downloaded the copy of this") (find-2022yttranscriptvideo "21:19" "video I did not download the") (find-2022yttranscriptvideo "21:21" "transcript. The local copy does not have") (find-2022yttranscriptvideo "21:24" "subtitles...") (find-2022yttranscriptvideo "21:27" "I'm not going to show how to download") (find-2022yttranscriptvideo "21:30" "this transcript now, and to") (find-2022yttranscriptvideo "21:33" "convert it to a format that makes it") (find-2022yttranscriptvideo "21:36" "work as subtitles for the video,") (find-2022yttranscriptvideo "21:41" "but it is possible to do that.") (find-2022yttranscriptvideo "21:43" "It's not the focus of the video") (find-2022yttranscriptvideo "21:45" "and I did not prepare that now...") (find-2022yttranscriptvideo "21:51" "anyway, let me go back. This is what I") (find-2022yttranscriptvideo "21:54" "wanted to show... no, there's one") (find-2022yttranscriptvideo "21:57" "thing missing, but the main idea") (find-2022yttranscriptvideo "21:59" "is that I have enhanced my") (find-2022yttranscriptvideo "22:04" "`find-youtubedl-links'") (find-2022yttranscriptvideo "22:07" "with a way to download the transcript") (find-2022yttranscriptvideo "22:09" "of a video.") (find-2022yttranscriptvideo "22:11" "This way can be accessed by this last") (find-2022yttranscriptvideo "22:15" "block here in the temporary buffer...") (find-2022yttranscriptvideo "22:18" "and so this is new - this is something") (find-2022yttranscriptvideo "22:21" "that I added to `find-youtubedl-links'") (find-2022yttranscriptvideo "22:25" "in March... and also,") (find-2022yttranscriptvideo "22:28" "there are several") (find-2022yttranscriptvideo "22:30" "new tricks here. One trick, that is not") (find-2022yttranscriptvideo "22:34" "very obvious and not everyone has") (find-2022yttranscriptvideo "22:36" "figured out that red star lines can do") (find-2022yttranscriptvideo "22:38" "that, is that we can use a red star line") (find-2022yttranscriptvideo "22:41" "to do other things of setups, like") (find-2022yttranscriptvideo "22:44" "changing the mode of a buffer - even") (find-2022yttranscriptvideo "22:48" "a temporary buffer...") (find-2022yttranscriptvideo "22:49" "so this one puts it in Python mode.") (find-2022yttranscriptvideo "22:53" "The rest is more familiar...") (find-2022yttranscriptvideo "22:56" "and note that this first line here says") (find-2022yttranscriptvideo "23:01" "to Python to import a library that") (find-2022yttranscriptvideo "23:05" "downloads transcripts from YouTube...") (find-2022yttranscriptvideo "23:07" "either transcripts or subtitles, it") (find-2022yttranscriptvideo "23:10" "works for both cases...") (find-2022yttranscriptvideo "23:13" "when people are running this for the") (find-2022yttranscriptvideo "23:15" "first time they probably do not have") (find-2022yttranscriptvideo "23:17" "that library... so what can they do?") (find-2022yttranscriptvideo "23:21" "This sexp here calls pip3, that is the") (find-2022yttranscriptvideo "23:26" "package manager for Python 3, with this") (find-2022yttranscriptvideo "23:29" "argument here, that is the name of our") (find-2022yttranscriptvideo "23:31" "package...") (find-2022yttranscriptvideo "23:33" "and this thing here opens a temporary") (find-2022yttranscriptvideo "23:35" "buffer that lets me") (find-2022yttranscriptvideo "23:38" "install that package.") (find-2022yttranscriptvideo "23:40" "In this case I already have that package") (find-2022yttranscriptvideo "23:43" "installed, so I do not need to run") (find-2022yttranscriptvideo "23:45" "these things...") (find-2022yttranscriptvideo "23:50" "and let me show something that I have") (find-2022yttranscriptvideo "23:53" "added to this... (find-2022yttranscriptvideo "23:55" "let's say, this module of eev, just a") (find-2022yttranscriptvideo "23:59" "few days ago. I've added these two") (find-2022yttranscriptvideo "24:02" "functions here. This one here") (find-2022yttranscriptvideo "24:06" "can be used to") (find-2022yttranscriptvideo "24:10" "show information about a package") (find-2022yttranscriptvideo "24:12" "that is already installed... let me") (find-2022yttranscriptvideo "24:14" "copy these two lines to my notes,") (find-2022yttranscriptvideo "24:17" "one second...") (find-2022yttranscriptvideo "24:21" "my notes are here...") (find-2022yttranscriptvideo "24:27" "so this sexp here") (find-2022yttranscriptvideo "24:32" "is also like a square dog, it's an") (find-2022yttranscriptvideo "24:36" "unusual kind of interface...") (find-2022yttranscriptvideo "24:41" "and it has this small Python program") (find-2022yttranscriptvideo "24:44" "here, that mentions the name of a package") (find-2022yttranscriptvideo "24:46" "in a certain point...") (find-2022yttranscriptvideo "24:49" "and in this small program here I import") (find-2022yttranscriptvideo "24:53" "a library called \"importlib\", that") (find-2022yttranscriptvideo "24:59" "handles \"import\" and the files that") (find-2022yttranscriptvideo "25:02" "import uses, and") (find-2022yttranscriptvideo "25:04" "its sublibrary metadata,") (find-2022yttranscriptvideo "25:09" "and pretty-print, and so on...") (find-2022yttranscriptvideo "25:12" "let me do that now...") (find-2022yttranscriptvideo "25:16" "here is a new Python") (find-2022yttranscriptvideo "25:19" "interpreter and I'm going to to run") (find-2022yttranscriptvideo "25:22" "these things...") (find-2022yttranscriptvideo "25:23" "if I do not have this package then this") (find-2022yttranscriptvideo "25:27" "import will fail, but I have this") (find-2022yttranscriptvideo "25:29" "package.") (find-2022yttranscriptvideo "25:30" "And now I'm going to run these things") (find-2022yttranscriptvideo "25:33" "here to get information about this local") (find-2022yttranscriptvideo "25:35" "package. Its init file is here...") (find-2022yttranscriptvideo "25:42" "now I'm going to run importlib with") (find-2022yttranscriptvideo "25:44" "a certain submethod to get information") (find-2022yttranscriptvideo "25:47" "about this package...") (find-2022yttranscriptvideo "25:49" "and I'm going to print some information") (find-2022yttranscriptvideo "25:53" "that is in this that data structure") (find-2022yttranscriptvideo "25:58" "here... and ta-da!") (find-2022yttranscriptvideo "26:00" "This is quite primitive, but basically") (find-2022yttranscriptvideo "26:02" "it shows how to obtain") (find-2022yttranscriptvideo "26:05" "information about Python a package") (find-2022yttranscriptvideo "26:08" "that is already installed") (find-2022yttranscriptvideo "26:11" "in a very low-level way...") (find-2022yttranscriptvideo "26:15" "so I think that people who are learning") (find-2022yttranscriptvideo "26:17" "Python are going to find this interesting.") (find-2022yttranscriptvideo "26:20" "And there's something similar, but that") (find-2022yttranscriptvideo "26:25" "checks the remote repository of Python") (find-2022yttranscriptvideo "26:28" "packages...") (find-2022yttranscriptvideo "26:30" "if execute this I get another") (find-2022yttranscriptvideo "26:33" "temporary buffer here...") (find-2022yttranscriptvideo "26:41" "and here I have") (find-2022yttranscriptvideo "26:43" "some information about the") (find-2022yttranscriptvideo "26:45" "functions that I'm going to to use now...") (find-2022yttranscriptvideo "26:51" "basically I'm going to") (find-2022yttranscriptvideo "26:54" "to ask this site here about information") (find-2022yttranscriptvideo "26:57" "about this package...") (find-2022yttranscriptvideo "27:00" "and well, it's...") (find-2022yttranscriptvideo "27:04" "sorry I'm not going to give") (find-2022yttranscriptvideo "27:06" "the details now... let me just show what") (find-2022yttranscriptvideo "27:08" "this does.") (find-2022yttranscriptvideo "27:11" "Let me run this again...") (find-2022yttranscriptvideo "27:13" "this takes a second because it has to") (find-2022yttranscriptvideo "27:18" "to talk to the internet,") (find-2022yttranscriptvideo "27:20" "and now I'm going to") (find-2022yttranscriptvideo "27:22" "explore this data structure a bit.") (find-2022yttranscriptvideo "27:26" "For example, this subfield of a subfield") (find-2022yttranscriptvideo "27:29" "here") (find-2022yttranscriptvideo "27:31" "has information about the home page of") (find-2022yttranscriptvideo "27:35" "the upstream version of this package...") (find-2022yttranscriptvideo "27:38" "I can visit this URL here...") (find-2022yttranscriptvideo "27:45" "I have just asked Emacs to open") (find-2022yttranscriptvideo "27:52" "a new tab in the browser with") (find-2022yttranscriptvideo "27:54" "this URL here... so") (find-2022yttranscriptvideo "27:58" "this is all the information about this") (find-2022yttranscriptvideo "28:00" "package, and") (find-2022yttranscriptvideo "28:03" "I think that not all these files are") (find-2022yttranscriptvideo "28:06" "downloaded when I install this package...") (find-2022yttranscriptvideo "28:08" "some of these files may be") (find-2022yttranscriptvideo "28:10" "documentation, examples...") (find-2022yttranscriptvideo "28:12" "I do not know this very well yet...") (find-2022yttranscriptvideo "28:20" "Yeah, so: that's it.") (find-2022yttranscriptvideo "28:22" "Let me finish the video now. So:") (find-2022yttranscriptvideo "28:26" "yeah, bye! =)") ]==] unrevised_bigstr = [==[ (find-2022yttranscriptvideo "00:00" "") ]==] -- Local Variables: -- coding: utf-8-unix -- End: