branch: externals/eev commit 817a52bb41dc78daed97e673d6ef72dababc0e4e Author: Eduardo Ochs <eduardoo...@gmail.com> Commit: Eduardo Ochs <eduardoo...@gmail.com>
Added "[Video links:]" blocks to several intros. --- ChangeLog | 17 +++++++++++++ VERSION | 4 +-- eev-audiovideo.el | 19 ++++++++------ eev-beginner.el | 55 ++++++++++++++++++++++++++++++---------- eev-intro.el | 75 +++++++++++++++++++++++++++++++++++++++++++++++++------ eev.el | 2 +- 6 files changed, 142 insertions(+), 30 deletions(-) diff --git a/ChangeLog b/ChangeLog index cbe8a85..c8dc662 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,20 @@ +2021-05-05 Eduardo Ochs <eduardoo...@gmail.com> + + * eev-intro.el (find-brxxx-intro, find-eev-quick-intro) + (find-pdf-like-intro): + + * eev-audiovideo.el (find-eev2019video, find-eev2020video) + (find-eevnavvideo, find-eevtemplvideo, find-eevfherelvideo) + (find-eevtestblocksvideo): make them interactive. + +2021-05-04 Eduardo Ochs <eduardoo...@gmail.com> + + * eev-intro.el (find-eev-install-intro): new section: "5.1. Using + the tarball". The old section "5.1. Using the git repository" is + now 5.2, and the old section "5.2. Installation quirks" is now + 5.3. + (find-eev-quick-intro): rewrote the section "1. Installing eev". + 2021-04-23 Eduardo Ochs <eduardoo...@gmail.com> * eev-intro.el (find-videos-intro): rewrote the sections "2. Short diff --git a/VERSION b/VERSION index 720904b..332d3b6b 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1,2 @@ -Tue May 4 07:48:51 GMT 2021 -Tue May 4 04:48:52 -03 2021 +Thu May 6 04:15:56 GMT 2021 +Thu May 6 01:15:56 -03 2021 diff --git a/eev-audiovideo.el b/eev-audiovideo.el index b554150..9c40f23 100644 --- a/eev-audiovideo.el +++ b/eev-audiovideo.el @@ -19,7 +19,7 @@ ;; ;; Author: Eduardo Ochs <eduardoo...@gmail.com> ;; Maintainer: Eduardo Ochs <eduardoo...@gmail.com> -;; Version: 2021apr22 +;; Version: 2021may05 ;; Keywords: e-scripts ;; ;; Latest version: <http://angg.twu.net/eev-current/eev-audiovideo.el> @@ -574,7 +574,8 @@ See: http://angg.twu.net/emacsconf2019.html and: (find-videos-intro \"2. Short links to eev video tutorials\") or: http://angg.twu.net/eev-intros/find-videos-intro.html#2 for more info on these video tutorials." - (find-eevvideo-links "eev2019" "emacsconf2019" "86yiRG8YJD0")) + (interactive) + (find-eevvideo-links "eev2019" "emacsconf2019" "86yiRG8YJD0" time)) ;; Skel: (find-eevshortvideo-links "eev2020" "emacsconf2020" "hOAqBc42Gg8") (defun find-eev2020video (&optional time &rest rest) @@ -584,7 +585,8 @@ See: http://angg.twu.net/emacsconf2020.html and: (find-videos-intro \"2. Short links to eev video tutorials\") or: http://angg.twu.net/eev-intros/find-videos-intro.html#2 for more info on these video tutorials." - (find-eevvideo-links "eev2020" "emacsconf2020" "hOAqBc42Gg8")) + (interactive) + (find-eevvideo-links "eev2020" "emacsconf2020" "hOAqBc42Gg8" time)) ;; Skel: (find-eevshortvideo-links "eevnav" "2020-list-packages-eev-nav" "kxBjiUo88_U") (defun find-eevnavvideo (&optional time &rest rest) @@ -594,7 +596,8 @@ See: http://angg.twu.net/2020-list-packages-eev-nav.html and: (find-videos-intro \"2. Short links to eev video tutorials\") or: http://angg.twu.net/eev-intros/find-videos-intro.html#2 for more info on these video tutorials." - (find-eevvideo-links "eevnav" "2020-list-packages-eev-nav" "kxBjiUo88_U")) + (interactive) + (find-eevvideo-links "eevnav" "2020-list-packages-eev-nav" "kxBjiUo88_U" time)) ;; Skel: (find-eevshortvideo-links "eevtempl" "2020-some-template-based" "91-9YfRPsuk") (defun find-eevtemplvideo (&optional time &rest rest) @@ -604,7 +607,8 @@ See: http://angg.twu.net/2020-some-template-based.html and: (find-videos-intro \"2. Short links to eev video tutorials\") or: http://angg.twu.net/eev-intros/find-videos-intro.html#2 for more info on these video tutorials." - (find-eevvideo-links "eevtempl" "2020-some-template-based" "91-9YfRPsuk")) + (interactive) + (find-eevvideo-links "eevtempl" "2020-some-template-based" "91-9YfRPsuk" time)) ;; Skel: (find-eevshortvideo-links "eevfherel" "2020-find-here-links" "8jtiBlaDor4") (defun find-eevfherelvideo (&optional time &rest rest) @@ -614,7 +618,7 @@ See: http://angg.twu.net/2020-find-here-links.html and: (find-videos-intro \"2. Short links to eev video tutorials\") or: http://angg.twu.net/eev-intros/find-videos-intro.html#2 for more info on these video tutorials." - (find-eevvideo-links "eevfherel" "2020-find-here-links" "8jtiBlaDor4")) + (find-eevvideo-links "eevfherel" "2020-find-here-links" "8jtiBlaDor4" time)) ;; Skel: (find-eevshortvideo-links "eevtestblocks" "2021-test-blocks" "fpsF_M55W4o") (defun find-eevtestblocksvideo (&optional time &rest rest) @@ -624,7 +628,8 @@ See: http://angg.twu.net/2021-test-blocks.html and: (find-videos-intro \"2. Short links to eev video tutorials\") or: http://angg.twu.net/eev-intros/find-videos-intro.html#2 for more info on these video tutorials." - (find-eevvideo-links "eevtestblocks" "2021-test-blocks" "fpsF_M55W4o")) + (interactive) + (find-eevvideo-links "eevtestblocks" "2021-test-blocks" "fpsF_M55W4o" time)) diff --git a/eev-beginner.el b/eev-beginner.el index 277d9c7..adb52b9 100644 --- a/eev-beginner.el +++ b/eev-beginner.el @@ -19,7 +19,7 @@ ;; ;; Author: Eduardo Ochs <eduardoo...@gmail.com> ;; Maintainer: Eduardo Ochs <eduardoo...@gmail.com> -;; Version: 2021jan02 +;; Version: 2021may06 ;; Keywords: e-scripts ;; ;; Latest version: <http://angg.twu.net/eev-current/eev-beginner.el> @@ -29,19 +29,27 @@ ;;; Commentary: -;; This file serves two purposes: +;; This file loads all modules of eev, turns eev-mode on, and opens +;; the main tutorial - i.e., runs `(find-eev-quick-intro)'. It is used +;; by the two most common ways of installing eev: ;; ;; 1) If you install eev as an emacs package via `M-x list-packages' ;; then no eev modules will be loaded UNTIL you run `M-x ;; eev-beginner', which loads everything, starts eev-mode, and ;; opens the main tutorial. Note that `eev-beginner' is the ONLY -;; autoloaded function in eev! +;; autoloaded function in eev! See: +;; +;; (find-eev-quick-intro "1. Installing eev") +;; (find-eev-intro "1. `eev-mode'") +;; (find-eev-intro "1. `eev-mode'" "If you load eev") ;; ;; 2) Some people start playing with Emacs+eev by copying and pasting -;; a certain script to a terminal and executing it, following the -;; instructions here: +;; a certain script to a shell in a terminal and executing it, +;; following the instructions here: ;; ;; (find-eev-quick-intro "1. Installing eev") +;; (find-eev-quick-intro "1. Installing eev" "tarball") +;; (find-eev-install-intro "5.1. Using the tarball") ;; ;; That script creates an executable file called "~/eev" whose contents ;; are something like this: @@ -53,15 +61,36 @@ ;; file - that loads all the other modules of eev - and then makes ;; Emacs evaluate the sexp `(find-eev-quick-intro)', that opens the ;; main tutorial. - -;; When, or if, you are no longer a beginner, you may want to load eev -;; by just adding a "(require 'eev-load)" to your ".emacs". This loads -;; all the main modules but does not turn on eev-mode on by default, -;; and does not open the tutorial. See: ;; -;; (find-eev-intro "1. `eev-mode'") -;; (find-eev-install-intro "2. The expert setup") -;; (find-eev "eev-load.el") +;; The idea is that even after installing eev: +;; +;; 1) it should be trivial to try eev in "beginner mode", +;; +;; 2) it should be trivial to start an Emacs without anything from +;; eev, or with at most with one "autoload" from eev - see: +;; +;; (find-enode "Lisp Libraries" "autoloaded") +;; +;; Some people are very finicky about packages that make global +;; changes when loaded. Loading all modules of eev causes the (almost +;; insignificant?) global changes described here, +;; +;; (find-eev-intro "1. " "the only" "things that happen") +;; +;; that aren't reverted by deactivating eev-mode with `M-x eev-mode', +;; and eev defines some functions with the prefix `find-', as +;; explained here: +;; +;; (find-eev-intro "4. The prefix `find-'") +;; +;; I've tried to make eev friendly to several kinds of people, +;; including total beginners and very finicky old-timers, and this +;; file - "eev-beginner.el" - seems to provide a good solution. +;; +;; The instructions for making Emacs load eev at startup are here: +;; +;; (find-eev-install-intro "2. The expert setup") + ;; NOTE: older versions of eev loaded "eev-readme.el" instead of ;; "eev-beginner.el". Compare: diff --git a/eev-intro.el b/eev-intro.el index 7275fc3..a7d152c 100644 --- a/eev-intro.el +++ b/eev-intro.el @@ -19,7 +19,7 @@ ;; ;; Author: Eduardo Ochs <eduardoo...@gmail.com> ;; Maintainer: Eduardo Ochs <eduardoo...@gmail.com> -;; Version: 2021may04 +;; Version: 2021may06 ;; Keywords: e-scripts ;; ;; Latest version: <http://angg.twu.net/eev-current/eev-intro.el> @@ -847,6 +847,9 @@ For more details see: [Video links:] (find-eevnavvideo \"10:36\" \"if I type <f8> six times here\") (find-eevnavvideo \"10:50\" \"a shell running inside Emacs\") + (find-eev2019video \"15:11\" \"Demo: the eepitch block (in red star lines)\") + (find-eev2019video \"15:48\" \"Demo: eepitch on non-red star lines\") + (find-eev2019video \"15:56\" \"Demo: eepitch in action\") @@ -1493,6 +1496,7 @@ See also: (find-code-c-d-intro) (find-eev2020video \"8:20\" \"`code-c-d' defines several new functions\") (find-eev2020video \"14:43\" \"1.4. How code-c-d is implemented\") (find-eev2020video \"17:20\" \"find-code-c-d shows the code...\") + (find-eev2019video \"17:07\" \"Demo: `code-c-d'\") @@ -1628,8 +1632,13 @@ executing the eepitch block below with <f8>s, then these sexps will be hyperlinks to a page of a PDF, and to some string in it... - (find-livesofanimalspage (+ -110 113) \"LECTURE I.\") - (find-livesofanimalstext (+ -110 113) \"LECTURE I.\") + (find-pdf-page \"~/Coetzee99.pdf\" 3 \"LECTURE I\") + (find-pdf-text \"~/Coetzee99.pdf\" 3 \"LECTURE I\") + +[Video links:] + (find-eev2020video \"4:52\" \"`find-pdf-page' calls an external program\") + (find-eev2020video \"5:26\" \"`find-pdf-text' converts the PDF to text and\") + @@ -2670,7 +2679,7 @@ things that happen are: 3) The environment variables \"S\" and \"EEVDIR\" are set. 4) An innocuous wrapper is installed around an internal - function used by `man'. See: + function used by `man' (with `advice-add'). See: (find-eev \"eev-blinks.el\" \"find-man\") @@ -6536,6 +6545,11 @@ position of a PDF, will be called a `find-pdf'-pair. +[Video links:] + (find-eev2020video \"4:52\" \"`find-pdf-page' calls an external program\") + (find-eev2020video \"5:26\" \"`find-pdf-text' converts the PDF to text and\") + + @@ -6648,6 +6662,13 @@ behave roughly as abbreviations for: (find-pdf-page \"~/Coetzee99.pdf\" (+ -110 113) \"LECTURE I.\") (find-pdf-text \"~/Coetzee99.pdf\" (+ -110 113) \"LECTURE I.\") +[Video links:] + (find-eev2020video \"10:22\" \"1.3. Shorter hyperlinks to PDFs and videos\") + (find-eev2020video \"10:45\" \"`code-pdf-page' creates short hyperlink functions\") + (find-eev2020video \"11:38\" \"let's try...\") + (find-eev2020video \"11:55\" \"`find-fongspivatext'\") + + @@ -6804,9 +6825,22 @@ that page of the book! -12. Another way to generate `code-pdf'-pairs -============================================ -\[Explain M-P. Example:] + +12. Other ways to generate `code-pdf'-pairs +=========================================== +The easiest way is with `M-h M-e'. See: + + (find-audiovideo-intro \"4.1. `find-extra-file-links'\" \"M-h M-e\") + +There is also `M-P', that is a \"wrapping function\" that +transforms the current line, like `M-B' - see: + + (find-eev-quick-intro \"8.4. Creating e-script blocks\" \"M-B\") + +`M-P' parses the current line as a short string and a file name, +and then deletes the current line and inserts in its place a +block of five lines containing a `code-pdf'-pair and some +comments. Try: (eek \"<down> M-P ;; eewrap-pdflike\") livesofanimals ~/Coetzee99.pdf @@ -6851,6 +6885,17 @@ At this moment the best explanation of these ideas in here: (find-eev \"eev-brxxx.el\" \";;; Commentary:\") in the source code. I need to rewrite this intro! +[Video links:] + (find-eevtemplvideo \"9:17\" \"3. The function that defines brep\") + (find-eevtemplvideo \"9:38\" \"`code-brurl' is a variant of `code-c-d'\") + (find-eevtemplvideo \"10:07\" \"find-code-url shows the code instead of executing it\") + (find-eevtemplvideo \"11:26\" \"this is explained in the main tutorial\") + (find-eevtemplvideo \"12:12\" \"accept extra arguments\") + (find-eevtemplvideo \"12:34\" \"if we run just this\") + (find-eevtemplvideo \"12:40\" \"one of the reasons for using text: comments\") + (find-eevtemplvideo \"13:03\" \"if we run just this with extra arguments\") + (find-eevtemplvideo \"14:10\" \"code-brurl executes this code here\") + @@ -7539,6 +7584,9 @@ default - and its error messages appear here: (find-ebuffer \"*Messages*\") +[Video links:] + (find-eev2020video \"6:25\" \"`find-video'\") + @@ -7666,6 +7714,9 @@ contains a line like this: This line will be explained in the section 4.4. +[Video links:] + (find-eev2020video \"12:54\" \"This block is a kind of an index for that video\") + (find-eev2020video \"13:30\" \"we can index video tutorials\") @@ -7714,6 +7765,16 @@ to the \"dired half\" of `M-h M-p' - see: but `M-h M-e' produces many more links. +[Video links:] + (find-eevtemplvideo \"28:12\" \"6. `find-here-links' and `find-extra-file-links'\") + (find-eevtemplvideo \"30:18\" \"`M-h M-e' runs `find-extra-file-links'\") + (find-eevtemplvideo \"30:42\" \"here is an example in Lisp\") + (find-eevtemplvideo \"31:06\" \"and I can change this {c}\") + (find-eevtemplvideo \"31:22\" \"Let me show a more realistic example\") + (find-eevtemplvideo \"31:28\" \"let's go to the directory with the video file\") + (find-eevtemplvideo \"31:45\" \"this file is a video file\") + + diff --git a/eev.el b/eev.el index 15e2b2a..89115e2 100644 --- a/eev.el +++ b/eev.el @@ -6,7 +6,7 @@ ;; Package-Requires: ((emacs "24.4")) ;; Keywords: lisp e-scripts ;; URL: http://angg.twu.net/#eev -;; Version: 20210102 +;; Version: 20210506 ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by